Preheat the oven to 350°F. Line a standard muffin tin with paper liners.
In a medium bowl whisk together the flour, baking powder, salt, and baking soda.
In a large bowl with an electric mixer fitted with the paddle attachment, beat the butter and sugar on medium high speed until light and fluffy, about 4 minutes, scraping down the bowl as needed. Add the oil and beat for another minute, or until smooth. Add the egg, egg yolk, and the vanilla one at a time, beating very well between additions until combined.
On low speed, add the flour mixture and buttermilk in three alternating additions, beginning and ending with the flour. Mix until just combined. Do not overmix. Batter will be fairly thick.
Divide the batter evenly among the cupcake cavities, filling each about 2/3 to 3/4 full. Don't overfill, you may need to bake up to 15 cupcakes if using a pan with smaller cavities. Bake for about 15 to 18 minutes, or until a toothpick comes out clean and the tops are springy to the touch. Let cool for 20 minutes in tin before turning out onto a cooling rack.
Frost the cupcakes:
Use an offset spatula to frost each cupcake. Alternatively, place the frosting in a piping bag fitted with a star tip and pipe the frosting onto the cupcakes.
Frosted cupcakes can be stored in an airtight container at room temperature for 1 day, or in the fridge for up to 3 days. Allow to come to room temperature before serving.