This cake has made coconut-lovers out of coconut-haters. Yes, you can substitute 2 cups flaked coconut (toasted, if you wish) for the fresh coconut, and about 1/4 cup coconut-flavored liqueur for the homemade coconut syrup, but... I have found that you really do need a little coconut extract to pump up the flavor. If you find a pure extract, so much the better, although I have used imitation with success.
2. Sift the flour, baking powder, and salt together onto a piece of waxed paper. In a large mixing bowl, using a hand-held electric mixer at high speed, beat the butter until creamy. Gradually add the sugar and beat until light in color and texture, about 3 minutes. One at a time, beat in the egg yolks. Alternating in three additions, beat in the coconut milk and flour mixture. Beat in the vanilla and coconut extracts.
3. In a greasefree medium bowl, using very clean beaters, beat the egg whites until stiff, but not dry. Stir about one-fourth of the whites into the batter to lighten it, then fold in the remaining whites. Spread evenly in the prepared pans. Bake until the tops of the cakes spring back when pressed gently in the centers, 30 to 35 minutes. Cool for 5 minutes, then invert onto wire cake racks. Remove the waxed paper, turn right sides up, and cool completely.
4. To make the coconut flakes and syrup, hold a coconut in one hand over a bowl. Turning the coconut in one hand like a ball, rap it around its equator with a hammer or the back of a heavy cleaver. After a few whacks (more or less), the coconut will crack open, and the juice will spill into the bowl. Strain the juice through a fine wire sieve into a small saucepan and set aside. Using a small, sturdy knife, pry out the coconut meat from the shell. It will come out in pieces, but try to keep them as large as possible. Using a swivel vegetable peeler, peel the coconut. Shred the coconut with a cheese grater (rotary or standing) or a food processor fitted with the fine shredding blade.
5. Preheat the oven to 350°F. Place the shredded coconut on a baking sheet and toss with the confectioner's sugar. Bake, stirring often, until the coconut is dry and mostly toasted light brown with some white shreds, 10 to 15 minutes. Meanwhile, add the granulated sugar to the coconut juice and bring to a boil over high heat, stirring to dissolve the sugar. Completely cool the toasted coconut and coconut syrup.
6. To make the frosting, combine all of the ingredients, except the extracts, in a 2-quart double boiler insert or heatproof bowl. Place over a medium saucepan of seriously simmering water. Using a hand-held electric mixer set at medium-high speed, beat until hot and fluffy, a full 7 minutes (set a timer). Remove from the heat, add the vanilla and coconut extracts, and beat for 1 more minute to cool slightly. Use the frosting immediately, or it could crust over. Place a dab of frosting in the center of a serving plate. Place one cake layer upside down on the plate. Brush with 2 tablespoons of the coconut syrup. Spread with 1 cup of the frosting and sprinkle with 1/3 cup toasted coconut. Top with the second layer, right side up, and brush with 2 more tablespoons of coconut syrup (you will have leftover syrup). Frost the top and sides of the cake with the remaining frosting. Press the remaining coconut on the top and sides of the cake. Serve within 8 hours.