1. Drain and rinse the beans, tip into a large pan and cover generously with cold water. Bring to the boil and skim off the scum, then add the studded onion, the bouquet garni, half the garlic and lots of pepper. Stir, half cover and boil for 30 minutes more. Stir occasionally and top up with water when necessary.
2. Meanwhile, preheat the oven to 220 C. Prick the duck all over with a fork and put on a rack in a roasting tin. Roast for 30 minutes, then remove and set aside. Lower the oven to 140 C.
3. When the beans have been cooking for 1 hour, tip them into a sieve, discard the onion and bouquet garni. Set sausages aside.
4. Put the belly pork in a flameproof dish and heat gently until the fat runs, then increase the heat and fry until just crispy. Add the poultry fat and heat until sizzling, then add the onion, carrot, celery and remaining garlic, scraping up the bits from the base. Fry over a gentle heat, stirring often, for 10 minutes. Use a slotted spoon to transfer to a plate.
5. Increase the heat and add the lamb. Stir fry until coloured on all sides, then transfer to the plate and repeat with the pork. Tip the ingredients from the plate back into the dish. Add the tomatoes, tomato purée and herbs, then season with sea salt and pepper to taste.
6. Add the haricot beans and 850ml water to the dish and bring to the boil. Stir, then lower the heat so the liquid is just simmering. Keep the mixture in the same dish to cook or transfer it to an earthenware dish.
7. Remove the skin from the duck, then tuck the duck legs into the liquid. Peel off the sausage skins, slice the sausagemeat thickly on the diagonal and add to the dish.
8. Cover the dish and bake for 1 hour, stirring once. Stir, then cook uncovered for a further 1-1½ hours, stirring halfway, until the meat is really tender and the sauce is thickened. Take the dish out of the oven and remove the duck legs. Strip the meat from the bones (it will fall off easily) and return the meat to the dish. Stir and add a little water, if necessary. Season if necessary, then return to the oven and bake for another 15 mintues until all the meat and beans are very tender.
9. Cut the crusts off the baguette, tear the bread into pieces and put in a food processor. Add the garlic and chop into coarse crumbs (you should have about 200g). Heat the fat in a large frying pan until sizzling, then stir fry the breadcrumbs and garlic over a moderate to high heat for 7-8 minutes until crisp and golden. Remove from the heat, toss in the herbs and stir to mix, then season well with salt and pepper.
10. Give the cassoulet a good stir. The consistency should be quite thick, but not stodgy. If you prefer it slightly runnier, add a little water. Taste and add more salt and pepper if necessary, then sprinkle the topping over the surface in a thick even layer. Serve in warm bowls with a green salad dressed in mustard vinaigrette.