In the bowl of a stand mixer fitted with the paddle attachment, cream together the butter and sugar until well combined. Next, add the extracts and eggs to the bowl and beat until combined.
In a separate bowl, mix together the flour and baking powder. Gradually add this bowl to the butter mixture, mixing just until fully combined.
Scrape the dough out of the bowl and onto a sheet of plastic wrap and wrap the dough completely. Place in the fridge for at least one hour.
Preheat oven to 350° and line a baking sheet with parchment paper.
Roll dough into small balls (about 1 Tbsp) each and place about 1 inch apart on the baking sheet. Bake 10 minutes, cookies will brown on the bottom but should stay pale on top.
Allow cookies to cool completely while you make the icing. Whisk together all ingredients, adding more milk (by the ½ tsp) or confectioner's sugar until icing is at the consistency you like for spreading.
After icing each cookie and before moving on to the next, sprinkle a few nonpareils on top. Icing will harden in about 20 minutes.