Preheat oven to 350°F. Grease and line three 6-inch cake pans with parchment paper. Set aside. While the cakes are cooling, make the frosting. Cream the butter, cream cheese, and whole milk until light and fluffy, about 3 minutes. Slowly add in the powdered sugar, vanilla extract, and shredded coconut, mixing again until light and fluffy, about another 2 minutes.Assemble the cake by laying down one layer, then frosting with 1/5 of the frosting. Repeat with remaining layers, then top with toasted coconut!
In a large bowl, stir together the melted butter, sugars, eggs, vanilla and rum.
In a medium sized bowl, add the flour, baking powder, and salt. Whisk together to combine.
Alternate adding in the flour mixture and buttermilk to the melted butter mixture in the large bowl. Start by adding 1/3 of the flour mixture and mixing until just combined, then add in 1/2 of the buttermilk and mix until just combined. Repeat until all of the flour and buttermilk has been incorporated. Once your last round of flour has gone in, stir until a couple streaks of flour remain DO NOT OVER MIX. At this point, using a rubber spatula, fold in the crushed pineapple and coconut to evenly distribute it throughout the batter.
Bake in preheated oven for 30-35 minutes until golden and a toothpick inserted in the center comes out clean. Allow to cool completely before frosting.