Preheat the oven - Preheat your oven to 350°F (175°C). This will ensure that the oven is hot enough to bake the cupcakes evenly.
Mix the dry ingredients - In a medium mixing bowl, whisk together the flour, baking powder, and salt until well combined. - Make sure to measure your ingredients carefully, as too much flour or baking powder can cause the cupcakes to be dense and heavy.
Cream the butter and sugar - In a large mixing bowl, beat the butter and sugar together until light and fluffy, about 3-5 minutes. You can use an electric mixer or a whisk for this step. - Make sure the butter is at room temperature before beating it, as cold butter will not mix well with the sugar. Also, don't overbeat the mixture, as this can cause the cupcakes to be tough.
Add the eggs and vanilla - Add the eggs, one at a time, beating well after each addition. Stir in the vanilla extract. - Make sure the eggs are also at room temperature, as cold eggs can cause the batter to curdle. If the mixture starts to curdle, add a tablespoon of flour and continue mixing until it comes back together.
Mix in the dry ingredients - Add the dry ingredients to the wet ingredients in three parts, alternating with the milk, and mix on low speed until just combined. Be careful not to overmix. - Overmixing the batter can cause the cupcakes to be tough. Mix until the flour is just combined, and then stop. If there are still some small lumps in the batter, that's okay - they will cook out in the oven.
Fill the cupcake liners - Line a muffin pan with cupcake liners and fill each liner about three-quarters full with batter. You can use a spoon or an ice cream scoop for this step. - If you want perfectly even cupcakes, use a cookie scoop to portion out the batter. This will ensure that each cupcake has the same amount of batter, and will bake evenly.
Bake the cupcakes - Bake the cupcakes for 18-20 minutes, or until a toothpick inserted into the center of a cupcake comes out clean. Remove the cupcakes from the oven and let them cool completely on a wire rack before frosting. - Make sure to check the cupcakes frequently as they near the end of their baking time, as overbaking can cause them to dry out.
Make the frosting - In a large mixing bowl, beat the butter and vanilla extract on medium speed until creamy. Gradually add the powdered sugar, one cup at a time, alternating with heavy cream, and beat until smooth and fluffy. If the frosting is too thick, add more heavy cream, one tablespoon at a time, until you reach the desired consistency. - Make sure the butter is at room temperature before beating it, as cold butter will not mix well with the powdered sugar. If the frosting is too runny, add more powdered sugar until you reach the desired consistency.
Frost the cupcakes - Transfer the frosting to a piping bag fitted with a large star tip, and pipe the frosting onto the cooled cupcakes in succulent shapes. Serve immediately, or store in an airtight container for up to 3 days. - If you don't have a piping bag, you can also spread the frosting onto the cupcakes with a spoon or butter knife.