Preheat the oven to 325°F (160°C), or 140°C for fan ovens. Line a 12-count muffin pan with paper liners.
In a medium bowl, whisk together the flour, baking powder, baking soda, and salt. Set aside.
In a large mixing bowl, beat the softened butter, sugar, and vanilla extract on medium speed for about 3 minutes until pale and fluffy.
Add the orange juice and eggs to the butter mixture and mix until combined. Add half of the flour mixture and beat gently.
Mix in the milk and orange zest. Add the remaining flour mixture and beat just until smooth. Do not overmix.
Fold in the fresh cranberries using a spatula, ensuring they are evenly distributed.
Divide the batter evenly between the cupcake liners, filling each about ¾ full.
Bake for 16–19 minutes, or until a toothpick inserted into the center comes out mostly clean with a few moist crumbs.
Remove from the pan and allow the cupcakes to cool completely on a wire rack before frosting