For the cake: Preheat the oven to 325 degrees F. Grease 3 cake pans. Mix together the flour, baking powder and salt in a bowl. Cream the butter, granulated sugar and eggs until very light and fluffy. Add the vanilla and coconut extracts. Add the cream and sour cream alternately with the dry ingredients and mix gently. Pour into the prepared pans and bake, 18 to 25 minutes.
To assemble: Remove a cake layer from the pan and place on a plate or a cardboard cake circle. Place 6 scoops of filling on top and smooth out with a spatula until it creates a perfectly even layer of filling. Place the next cake layer on top of the filling and press down evenly. Add another 6 scoops of filling, smooth out with spatula to create another layer of filling. Place the last cake layer on top of the filling and press down evenly.
Trim around the sides of the cake to create a smooth edge. Add a generous amount of frosting on top of the cake and smooth out with spatula. Then proceed to cover the sides of the cake with frosting. Sprinkle with the shredded coconut on the top and sides and then garnish with toasted coconut.