Preheat the oven to 350 degrees F. Grease and flour two 8-inch round cake pans. Set aside.
In a large mixing bowl, whisk together 2 1/2 cups cake flour, 3 tablespoons cornstarch, 1/2 tablespoon salt, 1 teaspoon baking powder, and 1/2 teaspoon baking soda. Set aside.
In the bowl of a stand mixer with a paddle attachment, mix 1 1/2 cups granulated sugar, 1/2 cup unsalted butter, and 1/2 cup vegetable oil until pale yellow, about 3 minutes. Add 2 large eggs and mix for 20 seconds, then repeat with the other 2 large eggs. Pour in 1 cup whole milk, 1/3 cup plain Greek yogurt, 1 tablespoon vanilla extract, and 1/2 tablespoon white vinegar, and mix just until combined (It will look slightly curdled, don't worry.)
Add in dry ingredients and mix with a spatula until combined. There may be some lumps, but there should not be any dry streaks. Divide the batter evenly between the prepared pans.
Bake for about 30-32 minutes or until a toothpick inserted into the center comes out clean. Remove from the oven.
Lightly grease 2 wire racks and place them on top of cake pans (one at a time) and flip upside down. Wait about 15-20 minutes, then tap the pans to release the cake onto the racks (If needed, run a knife along the edge and retry.)
Wrap the cakes in plastic wrap and leave them in the fridge for about 30 minutes to cool completely. (It's easier to ice a cold cake.)
Frosting
Using a double boiler, melt 10 ounces semi-sweet chocolate over low heat, stirring constantly. If needed, remove the bowl from the heat, place it on a towel, and stir the chocolate to help it cool down, about 3-5 minutes. The chocolate needs to be room temperature before adding it to the icing to prevent it from melting the butter and sugar.
While the chocolate is cooling, add 1 1/2 cups unsalted butter to the bowl of a stand mixer and beat on medium speed for about 2 minutes. Add cooled chocolate and beat on medium-low speed, until combined, scraping down the sides of the bowl as needed.
Add 5-6 cups powdered sugar (about ½ cup at a time), mixing well between each addition. (I used 5 ½ cups, but if you prefer it sweeter or a stiffer consistency, you can add up to 6 cups.) Add 1-2 tablespoons heavy cream and 1/2 tablespoon vanilla extract, then beat again for about 30-60 seconds on low speed.
Assembly
Unwrap the cake layers. Add a good amount of frosting to the top of one cake, then spread evenly with an offset spatula. Add the second cake on top of the first, upside-down. (This gives the cake a flat top.) Then, add a generous amount of frosting on top. Spread an even but thin layer along the top and the sides to make a crumb coat. It does not have to be perfect or thick (it's okay if the cake shows through), but the frosting should cover the whole cake.
Chill the cake for 30 minutes before the final layer of frosting.
If you want to add rosettes to the top of the cake, reserve ¾ cup of frosting. If you're just icing the rest of the cake (no rosettes), add the remaining icing to the top and spread it evenly over the cake, pushing it around and down the sides. If you have a cake scraper, you can use it to smooth out the sides.
For the rosettes, add the reserved frosting to a piping bag fitted with a large star tip. Pipe rosettes onto the top of the cake around the edge. Add 1/2 cup sprinkles as desired.
Notes
Cake layers can be wrapped tightly and refrigerated overnight before decorating.
To freeze cake layers, wrap each layer in plastic wrap and foil, then thaw in the refrigerator.
Let the melted chocolate cool to room temperature before adding it to the buttercream.
If the frosting gets too firm, warm it very gently and beat again until smooth.