Preheat your oven to 350°F (175°C). Line a 12-cup muffin pan with paper cupcake liners and set aside.
In a medium bowl, whisk together the flour, baking powder, and salt until evenly combined. Set aside.
In a large bowl, beat the softened butter and granulated sugar on medium-high speed for 3 to 4 minutes until pale, light, and fluffy. Scrape down the sides of the bowl as needed.
Add the eggs one at a time, beating well after each addition, then mix in the lemon zest, lemon juice, and vanilla extract until just combined.
With the mixer on low, alternate adding the dry ingredient mixture (in thirds) and the buttermilk (in halves), beginning and ending with the dry ingredients. Mix only until just combined — do not over-mix.
Using a cookie scoop or spoon, divide the batter evenly among the prepared liners, filling each about two-thirds full.
Bake on the center rack for 17 to 19 minutes, or until a toothpick inserted in the center comes out clean and the tops spring back when lightly pressed.
Cool the cupcakes in the pan for 5 minutes, then transfer to a wire rack and cool completely before frosting, about 30 to 45 minutes.
Beat the softened butter for 2 minutes until creamy, then slowly add sifted powdered sugar, followed by the lemon juice, lemon zest, and a pinch of salt. Add heavy cream one tablespoon at a time until fluffy and pipeable.
Pipe or spread the lemon buttercream onto the cooled cupcakes. Garnish with fresh lemon zest curls, a thin lemon slice, or yellow sprinkles if desired.