Line a standard muffin pan with 12 paper liners. Heat the oven to 350°F (175°C), with a rack in the center.
Whisk flour, baking powder, and salt in a bowl. Set the milk nearby so it can alternate with the dry mixture.
Beat cupcake butter and sugar for 3 minutes, until light. Beat in eggs individually, scraping the bowl, then add vanilla.
Mix in half the dry ingredients, followed by the milk and remaining dry ingredients. Keep the speed low and stop once combined.
Divide batter evenly between liners, filling each about two-thirds full. Bake 18–22 minutes, until tops spring back and a tester comes out clean.
Cool in the pan for 5 minutes, then transfer cupcakes to a rack. Wait until the centers are completely cool before adding frosting.
Beat frosting butter until creamy. Add powdered sugar gradually, followed by vanilla, salt, and 2 tablespoons cream; beat until fluffy.
Add the remaining cream only if necessary. Pipe or spread buttercream over each cupcake and serve once the frosting holds its shape.