In a large saucepan with high sides, cook the onion for 5 minutes over medium heat in half the duck fat. Stir while cooking. Add ¼ cup of the duck stock, then lower the heat to medium-low. Cover and cook 10 more minutes, stirring often. Add a bit more of the duck stock and continue cooking for 10 minutes, uncovered. Pour the onion mixture into a bowl and set aside.
Return the saucepan to the element and raise the heat to medium. Add the rest of the duck fat to the pan and then cook the duck legs, skin side down first, for 3 to 4 minutes each side or until they are nicely browned. Cook in two batches if necessary.
Add the cinnamon, cinnamon sticks, reserved onions and rest of the duck stock, then salt and pepper to taste. Bring to a boil, then reduce the heat to medium-low. Cover and let simmer 1 hour.
Add the vinegar and cover. Simmer 90 minutes more.
Remove the duck legs from the saucepan and keep warm to one side. Increase the heat to medium. Add the dates and ground cherries, then reduce the sauce for 5-10 minutes or until it reaches the desired consistency.
Serve the tajine in four plates and garnish each portion with one duck leg. Sprinkle each plate with toasted sesame seeds to taste and serve immediately. Serve with couscous and a spinach salad.
Recipe developed by Nicolas Vallée, professional chef