Preheat the oven to 350°F / 175°C. Generously grease three 8-inch / 20cm cake pans, then line it with greased parchment paper.
In a stand mixer fitted with the paddle attachment, cream the butter on medium-high speed until creamy and smooth, about 1 minute.
Turn the mixer speed to medium; add the oil, sugar, and vanilla to the butter; and beat for about 5 minutes, until the mixture is light in color and about double in volume.
Turn the speed to low and add the eggs and egg yolks, one at a time, mixing each until incorporated before adding the next. Scrape the bowl after each addition.
In a medium bowl, whisk together the flour, baking powder, salt, and spices.
In a large measuring cup, whisk together the milk and sour cream.
Add one-third of the flour mixture to the butter mixture and mix until combined. Scrape the bowl and add half of the milk mixture, mixing until combined. Repeat with another one-third flour, the remaining milk mixture, then finish with the final one-third flour, scraping the bowl and paddle after each addition.
Pour the batter into the prepared pan. Use an offset spatula to spread the batter evenly. Gently tap the pan on the counter several times to release excess air bubbles.
Bake until a tester comes out clean, about 25 to 30 minutes. Let the cake cool completely before removing from the pan by inverting onto a serving platter and decorate by layering the Brown Sugar Buttercream and Cranberry Filling between the layers and then covering the outside of the cake with more Brown Sugar Buttercream.