Make the cake: Preheat the oven to 350 degrees F. Spray three 8-inch cake pans with cooking spray and line the bottoms with parchment paper. Set aside.
Put the butter and sugar in the bowl of a stand mixer fitted with the paddle attachment and cream together on medium until light and fluffy. Add the eggs one at a time, scraping down the sides as needed to make sure everything is getting incorporated.
In the liquid measuring cup the coconut milk is measured in, stir in the vanilla and coconut extracts. Set aside.
In a large bowl, whisk together the flour, baking powder, and salt. Add one third of the flour mixture to the butter mixture and mix until just combined. Add half of the coconut milk and mix. Continue this way until the flour and coconut milk are all added and combined. Divide the mixture among the three cake pans (use an ice cream scoop to ensure you evenly divide the batter) and bake until a toothpick inserted into the center comes out clean, and the top is golden, 45 to 55 minutes. Let cool in the pans for 15 minutes, then invert onto wire racks to remove from the pans. Let cool completely before frosting.
Meanwhile, make the frosting: In the bowl of a stand mixer with the whisk attachment, cream together the cream cheese and sugar. It will seem gritty but that's ok. Turn on low speed and slowly stream in the heavy cream. It is going to seem weird and soupy, but then magically the cream will melt the sugars and whip and you'll have beautiful cream cheese frosting. Just mix slowly until this happens, 2 to 3 minutes.
To frost and decorate the cake: Level the layers if the center is domed. Add a small amount of frosting to your cake plate or cutting board and add the first layer, cut side down. This will ensure the cake stays anchored to the board. Add a large dollop, or about a quarter of the frosting, to one layer of cake and distribute evenly all the way to the edges. Add the second layer and another quarter of frosting. Add the third layer. Frost the top and then the sides of the entire cake with the remaining half of frosting. Press the coconut to the sides and top.
Now you are ready to enjoy a huge slice with cup of coffee or tea.
This finished cake can be wrapped in plastic wrap and frozen for up to 3 months or kept in the refrigerator for about 2 days.