01 - Preheat oven to 350°F. Grease and line two 9-inch round cake pans with parchment paper.
02 - In a medium bowl, whisk together flour, baking powder, baking soda, and salt. Set aside.
03 - In a large bowl, beat butter and sugar with an electric mixer until light and fluffy, about 3–4 minutes.
04 - Add eggs, one at a time, mixing well after each addition. Mix in lemon zest, lemon juice, and vanilla extract.
05 - On low speed, alternate adding flour mixture and milk to the butter mixture, beginning and ending with flour. Mix until just combined.
06 - Divide batter evenly between prepared pans. Smooth the tops with a spatula. Bake for 28–32 minutes, or until a toothpick inserted into the center comes out clean.
07 - Cool cakes in pans for 10 minutes, then transfer to wire racks to cool completely.
08 - Beat butter and cream cheese together until creamy and smooth. Add powdered sugar, lemon juice, lemon zest, vanilla, and salt. Beat until fluffy and well combined.
09 - Place one cake layer on a serving plate. Spread with frosting. Top with the second layer and frost the top and sides. Decorate with lemon slices, edible flowers, or sprinkles as desired.
10 - Chill cake for 30 minutes before slicing for cleaner cuts. Serve at room temperature.