Mix flour, baking powder, and salt in a bowl. Set aside.
Preheat oven to 350 degrees. Place rack in the center of the oven. Grease and line two 8-inch cake pans.
Place butter in a mixing bowl and beat on medium speed with a mixer for 1 minute. Add sugar and beat for another minute. Add coconut milk and coconut extract to the butter mixture.
Gradually add the flour mixture to the butter mixture and beat for 2 minutes.
In another bowl, beat egg whites until stiff peaks form. Fold the egg whites into the batter until all ingredients are incorporated.
Divide batter evenly between the cake pans. Bake for 23-28 minutes, until a toothpick inserted in the center of the cake comes out clean.
Remove the pans from the oven and place on a cooling rack for 5-10 minutes before removing cake from the pans.
Pineapple Filling
In a medium saucepan, combine pineapple filling ingredients over medium heat. Cook, stirring frequently, until the mixture thickens and has a glossy appearance, about 4-5 minutes. Set aside to cool.
Frosting
In the bowl of a stand mixer, beat cream cheese until smooth. Add coconut milk, powdered sugar, and coconut extract. Mix well and then fold the whipped cream into the mixture.
Assembly
Use a serrated knife to cut the cake horizontally into layers, making four 8-inch rounds. If desired, insert toothpicks around the outside of the cake at the halfway mark to use as a guide for cutting evenly.
Place the first cake layer on a serving plate and spread with half the pineapple filling. Place the second cake layer on top and spread with about a ⅓-inch layer of frosting. Add the third cake layer and spread with the remaining pineapple filling. Top with the last cake layer. Frost the sides and top of the cake. Sprinkle with coconut.
Notes
Coconut Cake with Pineapple Filling tastes best when refrigerated for at least 4 hours and is delicious served either chilled or at room temperature.This cake freezes well for up to three months.