Preheat oven to 350 degrees.
Butter and flour 2 nine inch round cake pans, tap out excess flour.
Into a large bowl, sift together flour, baking powder, and salt. Place 1 cup coconut in a bowl of a food processor fit with a metal blade and pulse until finely chopped. Stir coconut into flour mixture until well combined.
In a bowl of an electric mixer fitted with a paddle attachment, cream butter and sugar until light and fluffy about 4 minutes. Add eggs, egg whites, and vanilla, but until fully incorporated. Add flour mixture and coconut milk in three alternating batches, starting with flour, beat until combined after each addition.
Divide batter between pans. Bake until golden and brown and cake tester comes out clean, about 35 minutes. Transfer pans to a wire rack to cool, 30 minutes. Run a knife around the edges to loosen the cakes, invert onto rack. Let cool completely.
Using a serrated knife, trim tops of cake layers to make level. Transfer one layer to a serving platter and spread top with 1 1/2 cups frosting. Place other cake layer on top. Using an offset spatula spread remaining frosting over entire cake. Sprinkle with remaining cup coconut.