Preheat and prep: Heat the oven to 350°F (175°C). Line a 12-cup muffin pan with cupcake liners.
Mix dry ingredients: In a medium bowl, whisk flour, sugar, baking powder, baking soda, and salt until well combined.
Whisk wet ingredients: In a large bowl, whisk melted butter, oil, eggs, vanilla, and almond extract until smooth.
Add buttermilk: Whisk in the buttermilk until evenly combined. The mixture should look creamy.
Combine: Add the dry ingredients to the wet and stir with a spatula until just combined.
Do not overmix. A few small lumps are fine.
Color the batter: Add 1–2 small drops of pink gel color and fold gently. Adjust until you reach a soft, party-perfect pink.
Fill and bake: Divide batter evenly among liners, filling each about two-thirds full.
Bake for 16–20 minutes, or until a toothpick comes out clean or with a few moist crumbs.
Cool completely: Let cupcakes cool in the pan for 5 minutes, then transfer to a rack to cool fully before frosting.
Make the buttercream: Beat the butter on medium speed until creamy and slightly pale, about 2 minutes. Gradually add powdered sugar, 1/2 cup at a time, beating on low, then medium until fluffy.
Adjust texture and flavor: Add vanilla, almond extract, and salt. Beat in cream 1 tablespoon at a time until the frosting is smooth and pipeable.
It should hold a peak on a spatula.
Tint the frosting: Mix in pink gel a tiny bit at a time. For a two-tone effect, leave some frosting white and swirl in the bag.
Frost and decorate: Pipe tall swirls using a large star tip, or spread with an offset spatula. Top with sprinkles or pearls.