Preheat oven to 350°F. Grease and flour three 8-inch round cake pans.
In a medium bowl, whisk together the flour, baking powder, and salt. Set aside.
In a large bowl, beat at medium speed the butter and sugar until light and fluffy. Slowly add the oil and continue beating for 5-6 minutes until the mixture doubles in size. Scrape the sides of the bowl. Add eggs and egg yolks, one at a time, and beat until well incorporated. Scrape the sides of the bowl as needed.
In a 2-cup measuring cup, combine the yogurt, milk, lemon zest, and vanilla until smooth.
Add one third of the flour mixture to the butter mixture, beat until just combined. Add half of the yogurt mixture and mix. Repeat the process ending with flour mixture. Scrape the sides of the bowl as needed. Mix until combined.
Evenly divide the batter into the prepared pans. Bake for 22-25 minutes or until golden brown and a toothpick inserted in the middle of the cake comes out clean. Remove from oven and allow the cakes to cool in the pans for 10 minutes. Remove the cakes from pans and allow to cool completely.
Prepare the buttercream. In a large bowl, beat butter and sugar at low speed until combined. Increase the speed to medium and beat until well combined, about 3 minutes. Scrape the sides of the bowl. Add lemon zest and salt and beat until combined.
Reduce the speed to low and slowly add the lemon juice until the frosting is soft and spreadable. Add yellow color to desired taste.
Prepare the icing by mixing all the ingredients until smooth.
Place one cake layer on a serving platter. Fill a pastry bag fitted with a French start tip with buttercream, pipe one layer of buttercream over the cake. Place another cake layer on top and repeat the process. Place the last cake layer. Pour icing on top of the cake and decorate with buttercream, fresh lemon slices, and lemon zest.