Preheat the oven to 350°F (175°C). Grease and flour the cake pans, and line the bottoms with parchment paper.
In a large mixing bowl, cream together 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.
In another bowl, whisk together the flour, baking powder, and salt. Gradually add to the wet mixture, alternating with the milk, starting and ending with the flour. Mix until just combined.
Divide the batter evenly between the two prepared pans and smooth the tops. Bake in the preheated oven for 25 minutes or until a toothpick inserted into the center comes out clean. Let the cakes cool in the pans for 10 minutes, then remove to a wire rack to cool completely.
For the raspberry filling, combine the raspberries, granulated sugar, cornstarch, lemon juice, and water in a small saucepan. Cook over medium heat until the mixture thickens and bubbles, stirring frequently (about 5-7 minutes). Remove from heat and let cool.
In a large bowl, whip the heavy cream using an electric mixer until it starts to thicken. Add the powdered sugar and vanilla extract, and whip until peaks form.
Once the cakes have cooled, place one layer on a serving plate. Spread half of the raspberry filling over the top, then add a layer of whipped cream on top of the filling.
Place the second cake layer on top and repeat the process with the remaining raspberry filling and whipped cream. Decorate the top with additional raspberries if desired.
Chill the cake in the refrigerator for at least 1 hour before serving for the best texture.