Preheat the Oven: Preheat your oven to 350°F (175°C). Grease and flour your heart-shaped cake pan or use parchment paper to line the base.
Mix Dry Ingredients: In a medium bowl, whisk together the flour, baking powder, and salt. Set aside.
Cream Butter and Sugar: In a large bowl, cream together the butter and sugar using an electric mixer on medium speed until light and fluffy, about 3-5 minutes.
Add Eggs and Vanilla: Beat in the eggs, one at a time, ensuring each is fully incorporated before adding the next. Add the vanilla extract.
Add Dry Ingredients: Gradually add the dry ingredients to the wet ingredients, alternating with the milk. Start with a third of the dry ingredients, then a third of the milk, mixing well after each addition. Continue until all ingredients are incorporated.
Bake the Cake: Pour the batter into the prepared heart-shaped pan. Bake for 25-30 minutes or until a toothpick inserted into the center comes out clean.
Cool the Cake: Allow the cake to cool in the pan for 10 minutes, then transfer it to a wire rack to cool completely.
Prepare the Frosting: While the cake is cooling, prepare the frosting. In a bowl, beat together the softened butter and powdered sugar until smooth. Add milk and vanilla extract, mixing until fluffy. Add heavy cream if you want a smoother, silkier frosting.
Frost the Cake: Once the cake has cooled completely, spread the frosting evenly over the top. Decorate with edible flowers, sprinkles, or any other toppings you prefer.
Serve: Slice the cake and serve to your loved ones. Enjoy!