Combine the soy and hoisin sauces, honey, garlic, and Chinese Five Spice Powder in a jug and stir until well combined.
Place the duck in a large ceramic or glass dish and pour over the soy mixture. Cover with plastic wrap and place in the fridge for 8 hours or overnight to marinate, turning occasionally to coat the mixture.
Preheat the oven to 200°C. (For best results, cook in normal oven function rather than fan-forced.)
Place the onion slices and oil in a large roasting pan and gently toss until well coated. Make a bed with the onions in the roasting pan. Drain the duck, reserving the marinade, and place breast-side down on the sliced onions.
Place the marinade in a small saucepan and bring to the boil over medium-high heat. Reduce the heat to medium and simmer, uncovered, stirring occasionally for 2 minutes, or until the mixture thickens. Remove from the heat and set aside for 5 minutes to cool slightly.
Place the cinnamon sticks in the cavity of the duck. Brush the duck evenly with the marinade. Pour Sex in the Vineyard in the roasting pan around the duck. Cook in the preheated oven for 30 minutes.
Reduce the oven temperature to 150°C. Turn the duck over and sprinkle the breast evenly with the salt. Cook, brushing occasionally with the pan juices. Cook the duck slowly for 2 - 3 hours - the slower and longer the better. (You may need to reduce the heat to 130°C.)
Rest the duck in tin-foil - this will help bring the juices back into the duck.
Put the roasting pan on top of the stove and reduce the remaining juices until they reach sauce consistency.
Serve with the sauce drizzled over the top of the duck.