1. Preheat oven to 350ºF. Grease 2 9-by-5-inch loaf pans. Tap a thin layer of flour into each to coat; discard excess.
2. Sift both flours, baking powder, baking soda, cinnamon, ground ginger, nutmeg and salt into a medium bowl. In a large bowl, using an electric mixer on medium-high speed, beat butter and sugar until light, about 3 minutes. Add eggs, 1 at a time, beating after each. Scrape down sides of bowl.
3. Reduce mixer speed to low and add half of flour mixture, then buttermilk, then remaining flour mixture, beating after each addition until just combined. Scrape bowl and beaters as needed. Fold in zucchini, cranberries, pecans, coconut, crystallized ginger and chocolate. Divide batter between loaf pans, spreading evenly. Bake until loaves are golden and a skewer inserted into center of a loaf comes out clean, about 1 hour. Let loaves cool in pans on a wire rack for 10 minutes, then remove from pans and let cool completely.