Kitchen note: A nonreactive pan—stainless steel, enamel-coated or glass—is necessary when cooking acidic foods, such as cranberries, to prevent the food from reacting with the pan. Reactive pans, such as aluminum and cast-iron, can impart an off color and/or off flavor in acidic foods.
To prepare filling: Combine dried and fresh cranberries, honey, orange zest, cinnamon and cardamom (or allspice) in a medium nonreactive saucepan (see Note) over medium heat. Bring the mixture to a gentle boil and cook, stirring, until the fresh cranberries burst and soften, 4 to 5 minutes. Let cool slightly. Transfer to a food processor and puree. If the mixture seems dry, stir in up to 2 teaspoons water. Transfer the mixture to a nonreactive container and refrigerate while preparing the dough.
To prepare dough: Whisk all-purpose flour, whole-wheat flour, baking powder, salt, baking soda, cinnamon and cardamom (or allspice) in a large bowl. In another large bowl, combine oil, butter, sugar, honey, eggs, milk, orange zest, vanilla and almond extracts. Beat the wet ingredients with an electric mixer first on low speed, then on medium speed, until well combined. Add half the dry ingredients and beat on low speed until just incorporated. Stir in the remaining dry ingredients with a wooden spoon until evenly incorporated. If the mixture is too dry to hold together, stir in up to 1 tablespoon more milk. Cover and refrigerate the dough for 30 to 45 minutes to reduce its stickiness.
Turn the dough out onto a work surface and divide in half. Shape each half into a 6-inch-long log. Working with one log at a time, center it on a 16-inch-long sheet of baking parchment or wax paper. Cover with a second sheet. Press and then roll into a 12-by-15-inch rectangle of even thickness, inverting the dough occasionally to roll out any wrinkles and patching it to make the sides as even as possible. Transfer the dough, in the paper, to a baking sheet. Repeat with the remaining log of dough and transfer to the baking sheet. Place the baking sheet in the freezer until the dough is slightly firm, about 15 minutes.
To prepare pinwheel rolls: Place one sheet of dough on a work surface. Peel off the top sheet of paper. Spread half the reserved filling evenly over the dough (it will be a thin layer). Working from a 15-inch-long side, tightly roll up the dough jelly-roll style, leaving the bottom sheet of paper behind. While rolling, slightly stretch out the center to yield an evenly thick roll. Wrap the roll in a clean sheet of wax paper, twisting the ends to prevent unrolling (see Tip). Place on a baking sheet. Repeat with the second piece of dough and place on the baking sheet. Freeze until firm, at least 3 to 4 hours.
To bake cookies: Position racks in the upper third and center of the oven; preheat to 350°F. Line 2 large baking sheets with parchment paper. Working with one pinwheel roll at a time, trim the uneven ends. Cut the roll crosswise into 1/4-inch-thick slices using a large serrated knife; periodically turning the roll to maintain a relatively round cookie shape. Place the cookies on the prepared baking sheets, spacing them about 1/2 inch apart. Bake the cookies until puffed and barely golden brown, 12 to 16 minutes, switching the pans back to front and top to middle halfway through baking. Immediately transfer the cookies to wire racks to cool completely. Cut and bake the remaining pinwheel roll.