Prepare your oven and pan. Preheat your oven to 350°F (175°C). Grease and flour a 9×5-inch loaf pan, or line with parchment paper for easier removal.
Combine the dry ingredients. In a large bowl, whisk together the flour, sugar, baking powder, baking soda, and salt until well combined.
Mix the wet ingredients separately. In a medium bowl, combine the orange zest, orange juice, melted butter, egg, and vanilla extract. Whisk until smooth and fully incorporated.
Combine wet and dry mixtures carefully. Pour the wet ingredients into the dry ingredients and stir just until combined. Overmixing will result in a tough bread, so stop when no dry flour pockets remain.
Fold in the cranberries and nuts. Gently fold in the cranberries and nuts (if using) with a rubber spatula or wooden spoon. The batter will be thick.
Transfer to pan and bake. Pour the batter into your prepared loaf pan and spread evenly. Bake for 55-60 minutes, or until a toothpick inserted into the center comes out clean or with a few moist crumbs.
Cool before removing from pan. Allow the bread to cool in the pan for 15 minutes, then remove to a wire rack to cool completely.
Add the glaze if desired. Once the bread is completely cool, mix the powdered sugar and orange juice until smooth, then drizzle over the top of the bread. Let set before slicing.