Preheat oven to 350°F (175°C). Grease and flour two 8-inch round cake pans.
Whisk flour, baking powder, baking soda, and salt in a medium bowl.
Beat butter and sugar until fluffy. Add eggs one at a time, mixing well. Stir in lemon zest and juice.
Alternate adding dry ingredients with buttermilk and sour cream until just combined.
Divide batter evenly into pans. Bake for 25–30 minutes, or until a toothpick comes out clean.
Let cakes rest in pans for 10 minutes, then transfer to a wire rack to cool completely.
Beat cream cheese and butter until smooth. Add powdered sugar gradually, then mix in lemon zest and juice.
Frost one cake layer, place the second on top, and cover with frosting. Garnish with lemon slices.