Heat the oven to 160 degrees and line two greased standard muffin pans with cupcake liners.
In a large bowl, mix together the flour, baking powder and salt. Set aside.
In the bowl of a stand-up mixer, whip the butter and sugar together until light and fluffy. A large bowl with an electric hand mixer can also be used for this.
Gradually add the egg whites and the egg and mix again until they are combined. Add half of the flour mixture and mix until it is combined.
Gradually drizzle in the milk and the extracts. Add the remaining dry mixture and mix carefully until just combined. Do not overmix once the flour is added.
Divide the batter evenly among the cupcake cups (they should be two-thirds full) and bake about 20 minutes, or until the cake springs back when pressed lightly and an inserted toothpick comes out clean. Let cool.
To make the frosting, use a large bowl and a handheld mixer. Mix the cream cheese and butter together first on high speed until smooth and creamy. Add the icing sugar, vanilla and salt. Whip for another couple of minutes.
When your cupcakes are cool, frost the cupcakes generously and coat in desiccated coconut. Enjoy!