Cream the butter and sugar until fluffy. I do this in my stand mixer with the paddle attachment.
Beat in the eggs, one at a time, and be sure to scrape down the sides of the bowl between each one. Beat in the extracts.
Whisk together the flour, baking powder, baking soda, and salt. Add it to the mixing bowl, alternately with the buttermilk, beginning and ending with the flour. Mix just until combined, and scrape down the bowl. Fold in the coconut. Be sure to scrape the bottom of the mixing bowl to get everything incorporated.
Fill 10 cupcake liners. Bake for 30 minutes, or until golden browned and done through. You can test with a toothpick if you like. The tops should spring back when lightly touched. Let the cupcakes cool for a few minutes in the pan, then remove them to a rack to cool completely before frosting.
To make the frosting cream together the soft cream cheese and butter. Add the extract and the sifted sugar and beat until fluffy. Frost the cupcakes generously and top with coconut.
Notes
These are hefty cupcakes. If you are baking for kids you can make them smaller.
*Recipe lightly adapted from Ina Garten ~ it's in her Barefood Contessa Cookbook. I've halved Ina's recipe, because I didn't want 20 cupcakes around to tempt me.