Preheat oven to 180C / 350F. Grease and line 3, 22 cm cake tins. Set aside.
Toss blueberries in 1 tablespoon flour. Set aside.
Sift flour, sugar, baking soda, baking powder and salt into a bowl. Place eggs, oil, coconut milk and vanilla extract in a bowl. Whisk to combine. Set aside.
Pour egg mixture into flour mixture. Using an electric mixer, beat until just combined. Add coconut and blueberries. Fold in gently.
Pour batter into the prepared cake tins. Bake for 20-25 minutes or until a skewer inserted into the center of the cake comes out clean. Cool in tin for 10 minutes before transferring to a wire rack to cool completely.
Blueberry mixture:
Place blueberries, sugar and cornflour in a medium saucepan over low heat. Cook, stirring, for 2-3 minutes or until the blueberries are tender and the sauce is thickened. Leave to cool completely.
Cream cheese frosting:
Place butter, cream cheese and salt in a bowl. Using an electric mixer beat until light and fluffy. Add sugar, vanilla extract and salt. Beat again until combined.
Fold in blueberry mixture to ¼ cup of cream cheese mixture.
Blueberry coconut cake:
Place one cake layer on the serving plate. Spread with cream cheese frosting. Continue layering with remaining cake layers and cream cheese frosting. Spread the top and sides of the cake with a light coating of cream cheese frosting. Chill in refrigerator for 30 minutes.
Coat the top and sides of the cake generously with cream cheese frosting. Coat the top of the cake with blueberry cream cheese frosting. Decorate with blueberries.