Preheat and prep: Preheat your oven to 350°F (175°C). Grease and flour two 9-inch round cake pans or line them with parchment paper.
Mix the dry ingredients: In a medium bowl, whisk together the flour, baking powder, baking soda, and salt.
Cream butter and sugar: In a large bowl, beat the softened butter and sugar together until light and fluffy. Add eggs one at a time, beating well after each addition. Stir in vanilla extract.
Combine wet and dry: Alternate adding the dry ingredients and coconut milk to the butter mixture, starting and ending with the dry ingredients. Fold in the crushed pineapple.
Bake: Divide the batter evenly between the prepared pans and bake for 25–30 minutes, or until a toothpick inserted in the center comes out clean. Let the cakes cool in the pans for 10 minutes, then transfer to a wire rack to cool completely.
Make the frosting: In a chilled bowl, whip the heavy cream until soft peaks form. Add the coconut cream, powdered sugar, and vanilla extract, and continue to whip until the frosting is light and fluffy.
Assemble: Place one cake layer on a serving plate and drizzle with reserved pineapple juice. Spread a layer of frosting on top, then add the second cake layer. Frost the top and sides, then sprinkle with toasted coconut. Garnish with pineapple if desired.