Preheat oven to 325°F (165°C). Grease two 9-inch round cake pans, line with parchment paper circles, and grease the parchment.
In a medium bowl, whisk together flour, baking powder, baking soda, and salt. Set aside.
In a measuring cup, combine buttermilk, lemon juice, lemon extract, vanilla extract, and white vinegar. Stir and set aside.
In a stand mixer, beat together sugar, vegetable oil, and melted shortening on high speed for 2-3 minutes until pale and fluffy.
Add eggs one at a time on medium speed, beating 20 seconds after each addition. Beat 30 seconds after the last egg and scrape down the bowl.
Mix in lemon zest on low speed for 15 seconds until evenly distributed.
On low speed, alternate adding dry ingredients and buttermilk mixture in three additions, beginning and ending with dry ingredients. Mix until just combined after each addition.
Slowly pour in hot water with mixer on low speed. Mix 30 seconds until smooth (batter will be thin).
Divide batter evenly between prepared pans. Bake 28-30 minutes, rotating pans halfway through, until cake springs back when touched and toothpick has moist crumbs.
Cool cakes in pans for 10 minutes, then invert onto cooling racks, remove parchment, and cool completely (at least 1 hour).
Beat cream cheese and butter together on medium-high speed for 3-4 minutes until smooth and fluffy with no lumps.
Add sifted powdered sugar one cup at a time on low speed. Beat on medium for 2 minutes after all sugar is added.
Add lemon juice, lemon zest, lemon extract, vanilla extract, and salt. Beat on medium-high for 2-3 minutes until light and fluffy.
Place first cake layer on serving plate. Spread 1½ cups frosting evenly over top, reaching to edges.
Place second layer on top. Apply thin crumb coat over entire cake, refrigerate 15-20 minutes, then apply remaining frosting in thick, even layer.
Garnish with lemon slices or zest if desired. Refrigerate at least 1 hour before slicing for cleanest cuts.