Preheat oven to 350°F. Grease a 9x5-inch loaf pan and line with a parchment sling.
Whisk flour, baking powder, baking soda, salt, cinnamon, nutmeg, and allspice in a medium bowl.
In a large bowl, whisk buttermilk, oil, eggs, both sugars, vanilla, and orange zest until smooth.
Add dry ingredients to the wet. Stir gently just until no dry streaks remain.
Fold in apples, cranberries, and nuts until evenly distributed without overmixing.
Scrape batter into the prepared pan and smooth the top.
Bake 50–60 minutes, until a toothpick in the center comes out clean. Rotate the pan once halfway.
Cool in the pan for 10 minutes. Lift out and cool completely on a wire rack.
Slice with a serrated knife. Serve warm or at room temperature.