Step 1
Preheat oven to 350°F. Grease and flour three 8-inch round cake pans.
Step 2
In a medium bowl, whisk together the flour, baking powder, and salt. Set aside.
Step 3
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.
Step 4
In a 2-cup measuring cup, combine the yogurt, milk, and vanilla until smooth.
Step 5
Add a 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.
Step 6
Evenly divide the batter into the prepared pans. Bake for 22-25 minutes or until golden brown and a toothpick inserted in the middle comes out clean. Remove from oven and allow the cakes to cool in the pans for 10 minutes. Remove from pans and allow to cool completely.
Step 7
Prepare the buttercream while the cakes are baking. 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 vanilla and salt and beat until combined.
Step 8
Reduce the speed to low and slowly add the heavy cream until the frosting is soft and spreadable. Scrape the sides of the bowl as needed. Add melted chocolate and beat until well incorporated. Use immediately.
Step 9
Place one cake layer in a serving platter. Using an offset spatula, spread one layer of butter cream over the cake. Place another cake layer on top and repeat the process. Place the last cake layer and spread buttercream on top and sides of cake. Decorate with buttercream and sprinkles.