1 ounce brandy-based orange liqueur (such as Grand Marnier®)
1 tablespoon honey
1 tablespoon white sugar
1 teaspoon soy sauce
Preheat oven to 325 degrees F (165 degrees C).
Sprinkle Chinese five-spice powder inside the duck cavity. Add chopped onion and cubed orange.
Combine cranberries, orange liqueur, honey, white sugar, and soy sauce in a saucepan. Cook and stir until glaze reaches a jam-like consistency, 7 to 10 minutes. Allow to cool slightly, about 3 minutes.
Place duck on a roasting rack inside a roasting pan; baste with the glaze.
Bake in the preheated oven until no longer pink at the bone and the juices run clear, about 2 1/2 hours. An instant-read thermometer inserted into the thickest part of the thigh, near the bone, should read 165 degrees F (74 degrees C).