Whisk together the flour, baking powder, and salt in a large bowl. Set aside.
In a large bowl using a hand mixer or in the bowl of a stand mixer fitted with the paddle attachment, beat the butter and sugar together on high speed until smooth and fluffy (about 2 minutes).
Add the egg, vanilla and almond extract if using. Beat on high speed until combined, about 1 minute.
Add the dry ingredients to the wet ingredients and mix until just combined. Do not over mix. If dough is too sticky, add a tablespoon of flour as needed.
Remove dough from bowl and wrap in plastic wrap in a ball. Chill for 1-2 hours or up to 2 days.
Once dough is chilled, remove from refrigerator. Let dough come to room temperature and then divide into two pieces. Lightly flour a table top or piece of parchment paper and roll 1st dough ball out until it reaches 1/4 inch thickness. Use a cookie cutter to create cookies. Repeat with remaining dough. If cookies become to warm, you can refrigerate them for 20-30 minutes before baking. They will hold their shape much better this way!
Preheat oven to 350°F. Line two baking sheets with parchment paper. Place cut out cookies about 3 inches apart on the baking sheets. Bake for 11-12 minutes, or until the edges are lightly browned. Remove from oven and allow cookies to cool on baking sheet for 5 minutes. Transfer to a wire rack to cool completely. Once cooled, decorate with royal icing.