In order to get that authentic coconut taste, this cake is made with fresh coconut. This recipe is from my great grandmother, although I altered it a little, it is a family tradition. So go to your local grocery store and buy a coconut, crack it open with a hammer, drink the water (optional) and pry the coconut from the shell with a knife. You will not be disappointed, I promise!
Preheat oven to 350 degrees. I use pam baking spray to coat 2 8-by-2 or 9 inch pans, however you can use regular butter. In a large bowl mix all cake ingredients (dry and liquids). Bake cakes for 25-30 minutes or until an inserted toothpick comes out clean and dry.
While cake is baking prepare cake filling by placing the 1 cup of heavy whipping cream, 3/4 cup of sugar and 2 tablespoons cream of coconut in a saucepan over medium heat; bring to simmer. Add together the cornstarch and coconut milk and mix for 3 minutes. Add the butter and cup of coconut and mix for another 4 minutes. Take the saucepan off the heat and place elsewhere to cool cake filling to room temperature.
Prepare butter creme icing by placing butter, sugar, and vanilla extract in a large bowl. Mix together until ingredients are well blended and icing is of spreading consistency. Scrape the sides of the bowl and mix again. Taste the icing to assure that there is no "buttery" taste and icing is sweet.
Once cake is completely cooled, take one cake and cut off the top layer (or the top bump of cake). Spread the cake filling all over cake (you will not use all). Place the other cake on top evenly and spread icing all over. Sprinkle top and sides of cake with coconut. Place a cherry on top (optional).