Trim the large leaves from the cauliflower then using a sharp knife cut away the stalk and sit the cauliflower in a medium-sized saucepan over a medium heat.
Pour over boiling water from the kettle so that it comes up to about 2.5cm deep. Add a bay leaf to the water then sprinkle the top of cauliflower with some salt and freshly grated nutmeg.
Put a lid on and time it for 4 – 5 minutes until it is just cooked and still retains some bite.
Next add the rice to the cooked onion, pour over the boiling water and add the salt then give it one stir and put a tight fitting lid on and time it for 45 minutes.
Now for the cheese sauce put the milk, butter and flour into a small heavy gauged aluminum saucepan over a medium heat. Whisk all that together using a balloon whisk until it becomes a smooth glossy paste. Then turn the heat down as low as possible cook it for 5 minutes. Then add some seasoning and stir in the grated Cheddar and Parmesan.
Now cut the florets from the cooked cauliflower and place them in a warmed serving dish. Tuck the halved hard boiled eggs in amongst the cauliflower then pour the cheese sauce all over the top covering the surface completely.
Sprinkle the top with the breadcrumbs, cheeses and a little cayenne pepper then place it under the grill on a low shelf for about 5 minutes until the top is browned and the sauce bubbling.