Preheat oven to 180ºC and grease a shallow ovenproof dish with butter. Pour the milk and cream into a large saucepan and add the garlic. Add the sliced potatoes and bring to the boil. In a frying pan, add the bacon lardons. Cook until crispy.
Start layering the potatoes onto the base of the dish until covered. Spoon over some of the liquid and a little of the three cheeses. Then scatter over some of the bacon. Season then repeat until you have used all the potato. Pour over the remaining cream and scatter the leftover cheese. Reserve some of the bacon for topping later.
Cover with aluminium foil and cook in the oven for 1 hour. Remove the foil and cook for a further 30 minutes until the potatoes are cooked through and the topping is golden. Scatter the rest of the bacon during the last 5 minutes of cooking.
Whilst the potatoes are in the over for their final half hour, cook the duck and sauce. Score into the skins of the duck breasts with a sharp knife. Grind the juniper berries, caraway seeds, allspice and some salt and pepper using a pestle and mortar. Rub the spice mix over the duck breasts and leave to stand for 10 minutes.
In the frying pan lay the duck breasts skin side down and gradually turn up the heat. Fry for 5-10 minutes until most of the fat has rendered and the skin is golden brown. Turn the duck breasts over and lightly brown the other side for a couple of minutes or until they feel slightly springy when pressed. Remove from pan and leave to rest in a warm place (like the top half of your oven) while you make the sauce.
Pour out any excess fat from the frying pan and place over a high heat. Pour in the port and let bubble for a minute. Add the remaining ingredients except the butter and bring to a boil. Reduce by two thirds to create a thick syrupy consistency. Squash some of the cranberries.
Add any juices from the resting duck and adjust the seasoning after a taste test. Add a little more cranberry sauce if desired. Finally add the batter and stir gently as it melts.
Serve the duck breasts on serving plates and add the dauphinoise potatoes to the side. Spoon the sauce over the duck and serve.