Bring a large pan of water to the boil. Add the pasta and cook for 8 minutes until al dente. Add the cauliflower florets halfway through the pasta cooking time. Drain both and set aside, reserving about 50ml of the water.
Melt the butter over a medium heat in a large saucepan. Add the onions and sauté for 8 minutes until softened. Stir in the flour and cook for 1 minute. Gradually add the milk until incorporated, whisking after each addition. Bring to a steady simmer, constantly whisking until thickened. Stir in the pepper, nutmeg and 30g of each of the cheeses.
Preheat your oven to 200°C/gas mark 6. Once the sauce is prepared, add the cooked cauliflower and pasta, stirring until everything is combined and coated. If the sauce needs loosening, add the reserved water. Pour into a 22 x 22cm baking dish. Drizzle the bread chunks with the olive oil and scatter over the pasta. Sprinkle over the remaining cheese and bake for 30 minutes until melty, oozy and golden on top. Serve with your side of choice.