Preheat oven to 350°F. Line two 8-inch cake pans with parchment paper circles and spray with baking spray.
In a large mixing bowl, beat the butter, oil, and sugar until creamy and light, about 2-3 minutes.
1/2 cup salted butter, 1/2 cup vegetable oil, 1 1/2 cups (300g) granulated sugar
Add the eggs one at a time, mixing after each addition until combined. Stir in the vanilla and stop to scrape the bottom and sides of the bowl.
4 large eggs, 1 Tablespoon pure vanilla extract
In another bowl, whisk the flour, baking powder, baking soda, and salt. Add half of the dry ingredients to the wet ingredients, mixing on low speed just until only a few streaks of flour remain. Add half of the buttermilk, mixing again on low speed. Repeat with the remaining flour mixture and buttermilk, stirring on low speed or by hand just until the batter is combined. Do not overmix.
2 2/3 cup (375g) all-purpose flour, 2 1/2 teaspoons baking powder, 1/2 teaspoon baking soda, 1/2 teaspoon salt, 1 1/4 cups buttermilk
Divide the batter evenly between the prepared cake pans.
Bake for 30 to 35 minutes until a cake tester inserted into the center of each cake comes out with just a few crumbs clinging to it. Do not overbake.
Cool completely in the pans for 10-15 minutes before turning the cakes out onto wire cooling racks to finish cooling before assembling.
Make the frosting by beating the softened butter in a large mixing bowl until creamy and smooth. Add half of the powdered sugar, mixing on low speed until it starts to combine with the butter. Add the remaining powdered sugar and mix again. Add the cream and vanilla, then increase the mixer speed to medium-high and beat for 3-4 minutes until creamy and light.
1 1/2 cups salted butter, 6 cups powdered sugar, 1/3 cup heavy cream, 2 teaspoons pure vanilla extract
To assemble, place one cake layer on a cake stand or plate and frost with a generous amount of frosting. Add the top layer and frost the top and sides of the cake. Decorate with swirls of frosting and sprinkles, if desired.