Preheat the oven to 350°F (175°C). Grease a rectangular baking dish that’s about 12×8 inches (or 11×7 inches) and line the bottom with parchment if you can.
In a medium bowl, whisk together the flour, baking powder, baking soda, and salt.
In a large bowl, rub the sugar and blood orange zest together with your fingers until fragrant.
Whisk in the eggs, olive oil, Greek yogurt, blood orange juice, honey or maple syrup, and vanilla until smooth.
Add the dry ingredients to the wet and whisk or fold gently just until no dry streaks remain.
Toss the cranberries with 1–2 tablespoons of flour to lightly coat them, then fold them gently into the batter.
Spread the batter evenly in the prepared pan.
Bake for about 30–40 minutes, rotating once, until the top is golden, the edges pull slightly from the sides, and a tester in the center comes out clean or with a few moist crumbs. Start checking around 28–30 minutes.
Cool in the pan on a rack. You can serve straight from the pan, or once cool, loosen the edges and lift out if you used parchment.