01 - Preheat oven to 350°F. Grease a 9x5-inch loaf pan and line it with parchment paper.
02 - In a small saucepan, combine cranberries, sugar, water, and orange zest. Cook over medium heat, stirring occasionally, until cranberries burst and mixture thickens, about 8 minutes. Remove from heat and let cool slightly.
03 - In a medium bowl, whisk together gluten-free flour, baking powder, baking soda, and salt.
04 - In a large bowl, beat softened butter and granulated sugar until light and fluffy. Add eggs one at a time, mixing well after each addition. Stir in vanilla extract.
05 - Fold sour cream into the butter mixture. Add dry ingredients in two additions alternating with milk, mixing until just combined.
06 - Spread half of the batter evenly into the prepared pan. Spoon half of the cranberry mixture over the batter and gently swirl with a knife. Repeat layering with remaining batter and cranberry mixture.
07 - Sprinkle coarse sugar or gluten-free streusel on top if desired.
08 - Bake for 45 to 50 minutes, or until a toothpick inserted into the center comes out clean.
09 - Allow cake to cool in the pan for 10 minutes, then transfer to a wire rack to cool completely.