Preheat your oven to 350°F (175°C). Grease three 8-inch round cake pans, line the bottoms with parchment paper circles, and lightly flour the sides.
In a large mixing bowl, whisk together the cake flour, baking powder, and salt until evenly combined. Set aside.
In the bowl of a stand mixer fitted with the paddle attachment, beat the softened butter on medium speed for 1 minute until smooth and creamy.
Add the granulated sugar to the butter and beat on medium-high speed for 3-4 minutes until the mixture is light, fluffy, and pale in color.
Add the eggs one at a time, beating well after each addition and scraping down the sides of the bowl as needed. Mix in the vanilla bean paste and 1 teaspoon rosewater until incorporated.
With the mixer on low speed, add the flour mixture in three additions, alternating with the milk in two additions, beginning and ending with the flour. Mix each addition just until combined — do not overmix or the cake will be tough.
Divide the batter evenly among the three prepared pans, using a kitchen scale for precision if desired. Smooth the tops with an offset spatula and gently tap the pans on the counter to release air bubbles.
Bake for 25-28 minutes, or until a toothpick inserted in the center comes out with a few moist crumbs and the tops spring back when lightly pressed. Rotate the pans halfway through for even baking.
Cool the cakes in the pans on wire racks for 10 minutes, then turn them out onto the racks to cool completely before frosting, at least 1 hour.
For the buttercream, beat 2 cups softened butter on medium speed for 2 minutes until creamy. Gradually add the powdered sugar one cup at a time, alternating with the heavy cream, beating on low until incorporated.
Add 1 1/2 teaspoons rosewater and vanilla extract, then increase speed to medium-high and beat for 3-4 minutes until the buttercream is light, fluffy, and holds stiff peaks. Add a tiny amount of pink gel coloring if desired.
Level the cooled cake layers with a serrated knife. Place the first layer on a cake stand or serving plate, spread with about 3/4 cup buttercream, then repeat with the second layer. Top with the final layer and apply a thin crumb coat over the entire cake. Refrigerate for 20 minutes, then apply the final layer of buttercream, smoothing with an offset spatula or bench scraper.