Lay the bay leaf over the cut side of the onion, and poke the cloves through the bay leaf and into the onion, to secure the bay leaf in place. Put the onion into a 2-quart saucepan, and add the milk. Set the saucepan over medium heat, and bring to a gentle simmer. Cook without boiling for 10 minutes. Remove pan from heat and strain through a fine sieve, reserving the milky mixture; set aside until ready to use.
Preheat oven to 400°F.
Steam the cauliflower just until tender, about 10 minutes. Arrange the cauliflower in a shallow 2-quart casserole dish (approximately 8x11 inches), and set aside to prepare the sauce.
In a 2-quart saucepan, melt 3 tablespoons of the butter. Add the shallots and garlic, and sauté until fragrant, about 1 minute. Add the flour to the pan and stir to form a roux. (Do not allow mixture to brown.) Add the strained milk mixture to the pan and whisk until smooth. Increase the heat and bring to a boil. Reduce the heat to a simmer, and cook for 10 minutes or until thickened and smooth. Remove the pan from the heat and add the nutmeg and grated cheese, stirring until melted. Strain the sauce and pour evenly over the cauliflower.
Melt the remaining 2 tablespoons of butter in an 8-inch skillet. Add the bread crumbs, and toss to coat with butter. Season with salt, pepper and parsley. Sprinkle the seasoned bread crumbs evenly over the top of the cauliflower.
Bake in preheated oven for about 25 minutes or until golden brown and sauce begins to bubble.