Preheat the oven to 350°F. Spray two 9-inch cake pans with nonstick cooking spray and line the bottoms with a round of parchment paper.
Cream the butter, shortening, and sugar in a large mixing bowl until smooth and creamy.
Scrape down the sides of the bowl and add the lemon zest, lemon extract, and vanilla extract. Beat until combined.
Add the eggs and lemon juice and mix on high speed for 2 to 3 minutes.
Sift together the flour, baking soda, baking powder, and salt in a separate bowl.
Add ½ cup of milk to the wet ingredients, then ½ of the flour mixture, another ½ cup of milk, the remaining flour, and the remaining milk. Mix just until everything is combined.
Divide the batter between the two prepared baking pans.
Bake for 25 to 30 minutes or until a toothpick inserted into the cakes comes out with just a few crumbs.
Cool cakes for 5 to 10 minutes and then transfer them to a cooling rack to cool the rest of the way.
Prepare the frosting by beating the butter and two cups of powdered sugar together until well combined. Add in the lemon extract and a pinch of salt. Continue beating, adding the remaining powdered sugar and a tablespoon of milk at a time until the frosting is fluffy and creamy.
Assemble the cake by spreading a layer of frosting on the first layer, stacking the second layer on top, and then frosting the top and around the sides of the cake. Decorate as desired.
Notes
Buying pre-cut parchment paper rounds makes lining the pans easier.
Sifting the flour into your bowl will create a fluffier cake once baked.
Oven temperatures vary and may need to be recalibrated periodically to ensure they are accurate. Make sure to check your cake at the lower end of the recommended baking time.