Preheat the oven to 350°F (175°C) and grease two 8-inch round cake pans.
In a medium bowl, whisk together flour, baking powder, and salt.
In a large mixing bowl, beat the softened butter and granulated sugar until light and fluffy.
Add the eggs one at a time, mixing well after each addition. Stir in the vanilla extract.
Alternate adding the dry ingredients and milk to the batter, mixing just until combined after each addition.
Divide the batter evenly between the prepared cake pans and smooth the tops.
Bake for 28–32 minutes, or until a toothpick inserted into the center comes out clean.
Allow the cakes to cool in the pans for 10 minutes, then transfer to a wire rack to cool completely.
To prepare the raspberry filling, combine raspberries, sugar, and lemon juice in a saucepan over medium heat.
Stir occasionally until the raspberries begin breaking down and releasing juice.
Mix cornstarch and water together, then stir it into the raspberry mixture. Continue cooking until thickened.
Remove the filling from the heat and allow it to cool completely.
For the lemon buttercream, beat softened butter until creamy and smooth.
Gradually add powdered sugar, then mix in lemon juice, lemon zest, vanilla extract, and heavy cream until fluffy.
Place one cake layer onto a serving plate and spread a layer of lemon buttercream around the edge to create a border.
Spoon the cooled raspberry filling into the center and spread evenly.
Place the second cake layer on top and frost the entire cake with lemon buttercream.
Garnish with fresh raspberries and lemon zest before serving.