Preheat oven to 350 degrees Fahrenheit.
Grease the loaf pans and set aside.
Combine flour, sugar, baking powder, salt, baking soda, and cinnamon in a bowl.
Using a food process, chop the cranberries to a rough chop texture (or your preference), but be careful not to blend continuously because that will puree them.
Stir butter into flour mixture and combine. Use your hands to break up the butter into smaller chunks to make it more evenly distributed.
In a small bowl, beat eggs with orange juice and orange zest.
Add orange juice mixture to the flour mixture and combine. Add buttermilk.
Fold in chopped cranberries and walnuts (if using walnuts).
Spoon batter into the prepared pans about 3/4 of the way up, leaving a little room at the top of the tin for the bread to rise.
If using Demarera sugar, top the bread with it and bake the loaves for 60 minutes or until a toothpick comes out clean.
Cool in tins for about 10 minutes then move to wire rack to finish cooling.