Lightly score the skins of the duck breasts, with a sharp knife. Using a mortar and pestle, grind the juniper berries, caraway seeds, allspice, 1tsp salt and a few grinds of pepper to a powder. Rub the spice mix all over the duck breasts and leave to stand for about 10 minutes.
Lay the duck breasts, skin side down, in a large, heavy-based dry frying pan and gradually turn up the heat. Fry for 5-10 minutes until most of the fat has rendered from and the skin is golden brown.
Turn over and lightly brown the other side for a couple of minutes or until the duck breasts feel slightly springy when pressed. Remove from the pan and leave to rest in a warm place while you make the sauce.
For the sauce, pour off excess fat from the frying pan and place on a high heat. Pour in the port to deglaze, allowing it to bubble for a minute. Add the remaining ingredients, except the butter, and bring to the boil, then boil until the liquid has reduced by two-thirds and thickened to a syrupy consistency. The cranberries should be very soft; squash a few with a wooden spoon, leaving the others whole. Add any juices from the resting duck breasts. Taste and adjust the seasoning and add a little more jelly if desired. Finally, add the butter and shake the pan to incorporate it into the sauce as it melts.
Slice the duck breasts on the diagonal and fan them out on warm serving plates. Spoon the sauce around the duck and serve with parsnip mash and creamed cabbage if you like.
For top tips on protecting you and your family when preparing raw meat and poultry, visit Food Safety in the Home and view the full Food safety at home video.
See more Christmas recipes
Recipe from Gordon Ramsay - Christmas with Gordon
Whether you are hosting a drinks party for friends, cooking for the main event or just making a dessert, Gordon's latest Christmas book has a range of great recipes for the festive season.