01 - Preheat the oven to 350°F. Grease and line a 9x5-inch loaf pan with parchment paper.
02 - Whisk together flour, baking powder, baking soda, and salt in a medium bowl.
03 - Using an electric mixer or whisk, beat softened butter with granulated sugar until light and fluffy.
04 - Beat in eggs one at a time, then mix in yogurt (or sour cream), milk, orange zest, orange juice, and vanilla extract until smooth.
05 - Gradually fold dry ingredients into wet mixture until just combined, avoiding overmixing.
06 - Gently fold in cranberries to distribute evenly throughout the batter.
07 - Pour batter into prepared pan, smooth the surface, and bake for 50 to 60 minutes. Tent loosely with foil after 40 minutes if browning too quickly.
08 - Let the loaf cool in the pan for 10 minutes before transferring to a wire rack to cool completely.
09 - Whisk powdered sugar with orange juice until smooth and drizzle over the cooled loaf.
10 - Allow glaze to set before slicing and serving.