Preheat oven to 350°F / 180°C.
In a medium bowl, whisk flour, baking powder, cornstarch and salt. Set aside.
In a separate medium bowl, beat ½ cup butter (8 tablespoons), 1 cup sugar, orange zest, and 1 teaspoon vanilla on medium high speed with electric mixer until pale and fluffy, about 4 minutes.
Add eggs to butter mixture, one at a time, with the mixer on low speed, and beat until incorporated. Set aside.
Add remaining 4 tablespoons of butter to a 9 inch round cake pan, and place in oven to melt. This should only take a few minutes. *See note about parchment paper liner.
Add 1 teaspoon vanilla and ¼ cup of sugar to melted butter in cake pan and whisk to combine. Place pan back in the oven and when butter has started to bubble and just barely brown, add 2 tablespoons orange juice, whisk to combine, then add cranberries and place back in the oven for 5 minutes to let cranberries begin to soften.Remove cake pan from oven and set aside. Add flour mixture to butter mixture in 2 batches, alternating with the milk and then the remaining orange juice. Beat on medium low, just until combined, with each addition.
Gently scoop batter into the cake pan, on top of the cranberries, and smooth the top with an offset spatula or rubber spatula.
Bake until cake is golden and puffed and a cake tester (knife) comes out clean, 45 to 50 minutes.
Transfer to a wire rack to cool in the pan for 10 minutes.
Run a knife (or offset spatula) around the edge of the pan to loosen cake, then invert onto wire rack to cool.*Let the cake completely cool before slicing.