Preheat oven to 350°F. Line standard muffin pan with paper liners; set aside.
Using a countertop mixer, cream together butter and both sugars on medium speed until light and fluffy (~2-3 minutes on medium speed).
Add egg and egg yolk; mix until just combined.
In a separate bowl, sift together dry ingredients (flour, baking soda and salt). In another bowl, whisk together the liquid ingredients (buttermilk and vanilla).
Add ½ of the dry ingredients to the mixing bowl; mix on low speed until fully combined. Add ½ of the liquid ingredients; mix on low until fully combined. Repeat with remaining dry and liquid ingredients.
Once all ingredients have been added, scrape the sides of the bowl down with a spatula and mix on medium speed until batter is smooth.
Fold in coconut flakes and 1 cup of the toasted, chopped pecans. (Note: The remaining pecans will be used to garnish tops of cupcakes.)
Divide the batter evenly among cupcake liners. Bake at 350°F for 20-22 minutes, or until a toothpick inserted into the center of a cupcake comes out mostly clean.
Let cupcakes cool in pan for 10 minutes before transferring to a cooling rack to cool completely.
For the Cream Cheese Frosting
Spread the coconut flakes out on a baking sheet; bake at 350°F for 6-8 minutes, or until lightly golden brown. (Tip: Watch coconut closely as it can burn quickly!) Set toasted coconut flakes aside.
Using a countertop mixer, cream together the cream cheese and butter until fully combined.
Add vanilla extract and powdered sugar (½ cup at a time) until frosting reaches desired consistency.
Beat on medium-high speed for 2-3 minutes, or until fluffy.
Once cupcakes are completely cool, fill piping bag with frosting and decorate as desired. (Note: I used a Wilton 1M large star tip.)
Garnish tops of cupcakes with toasted coconut and reserved chopped pecans.
{Optional} Garnish cupcakes with maraschino cherry before serving.