How to Make It
Preheat the oven to 350°. Butter and flour a 9-by-2-inch round cake pan. In a medium bowl, sift the cake flour with the baking powder, baking soda and salt. In another bowl, combine the buttermilk with the coconut milk and vanilla.
In a large bowl, using an electric mixer, beat the butter until creamy. Add the sugar and beat at medium speed until light and fluffy. Add the eggs, 1 at a time, beating well after each addition. At low speed, beat in the dry ingredients in 3 batches, alternating with the buttermilk mixture.
Scrape the batter into the prepared pan and lightly smooth the surface. Bake for about 40 minutes, or until the cake is golden and a tester inserted in the center comes out clean. Let the cake cool in the pan for 15 minutes, then invert it onto a wire rack and let cool completely. Wrap the cake in plastic and refrigerate until chilled.
If toasting the coconut, spread it on a rimmed baking sheet and bake for about 7 minutes, stirring frequently, until golden and crisp. Transfer the toasted coconut to a plate and let cool completely.
In a small saucepan, combine 1 cup of the coconut milk with the sugar and bring to a boil over moderate heat, stirring until the sugar dissolves. Meanwhile, in a small bowl, mix the remaining 1/2 cup of coconut milk with the cornstarch until smooth, then whisk the mixture into the boiling coconut milk. Cook the custard over moderate heat, stirring constantly, until it is very thick, about 2 minutes.
Remove the coconut custard from the heat and whisk in the cream cheese, white chocolate, vanilla and salt; stir until completely smooth. Scrape the coconut custard into a large bowl and press a sheet of plastic wrap directly on the surface. Refrigerate the custard until chilled, at least 2 hours.
In a medium bowl, beat the heavy cream until stiff. Whisk one-fourth of the whipped cream into the coconut custard until blended, then fold in the remaining whipped cream.
Using a long serrated knife, cut the cake in half horizontally. Center the top cake layer on a plate, cut side up. Using a long metal spatula, spread 1 scant cup of the frosting over the cake. Center the bottom cake layer, cut side down, on the frosting.
Spread the top and sides of the cake with the remaining coconut custard frosting. Sprinkle the toasted coconut evenly over the top and sides of the cake, pressing it lightly to adhere. Refrigerate until chilled, at least 2 hours, or in an airtight container for up to 2 days. Cut the cake with a hot knife, wiping the blade between slices.