Pre-heat the oven to 200°C.
Stuff the guinea fowl with thyme and garlic and season inside and out.
Heat 2 tablespoons of oil in a roasting tin and roast the fowl on its side for 10 minutes.
Rotate the bird to the other side for 10 minutes, then turn breast-side up and roast at 180°C for 20 minutes.
Remove the bird, cover with foil, and rest for 15 minutes.
Deglaze the roasting tin with Madeira, add stock, and reduce by half in a saucepan.
Sauté mushrooms in remaining oil over high heat for 4 minutes.
Carve the legs and breasts from the fowl and place on a tray with the mushrooms.
Warm the meat and mushrooms in the oven for 4 minutes while whisking butter and herbs into the sauce.
Stir-fry the cabbage in butter until wilted and season with salt, pepper, and nutmeg.
Serve the guinea fowl over cabbage and mushrooms, topped with the sauce.