Heat butter in a frying pan over medium heat. Salt and pepper the duck on all sides, then saute in butter until well browned. Remove from pan and set aside.
Saute the onion in the butter and duck fat until translucent. Add garlic and saute but don't brown it. Add the crushed stock cube and cornflour and mix well.
Return the duck to the frying pan and add the orange juice and water. Add the zest and rosemary, then cover and simmer 35-40 minutes until tender. Remove lid and simmer 10 minutes to thicken the sauce to desired consistency.
Remove the rosemary, adjust seasoning and place the duck on a warmed serving platter. Garnish with orange slices and serve the sauce in a sauce boat.