Leave the cashews soaking in boiling hot water for 20 minutes. Then drain and rinse the cashews.
Using a large pot, bring some water to a boil.
While you wait for the water to boil, cut the cauliflower head into medium-sized florets. You can do this using a sharp knife or your hands. Wash the cauliflower florets and add them to the boiling water.
Cook for about 8 minutes or until they are tender. Drain the water using a colander and set it aside.
Add the soaked cashews to a blender jug with water and nutritional yeast. Blend until you have smooth milk. To avoid the cashew milk from being grainy, use a powerful blender such as Ninja Bullet or similar. As well, the longer you soak the cashews, the easier they blend.
Preheat the oven to 200C (400F)
Using a medium saucepan or small pot, add the vegan butter and melt it at low heat.
Keep the pan or pot at low heat and slowly add the flour. Using a wooden spoon or whisk keep mixing while adding the flour to make sure no lumps are formed.
Pour the cashew milk while you keep stirring.
Stir for 3-5 minutes until the bechamel has thickened to the desired consistency. If you find that the bechamel is too thick, you can always add some plant milk. If the bechamel is too liquidy, keep cooking for 1 or 2 more minutes or bring the pot to medium heat.
Once the bechamel has a perfect consistency, turn off the heat and add the mustard, lemon juice, a handful of vegan cheese, spices, salt, and pepper. Combine well until all the ingredients are incorporated.
Place the cooked cauliflower in a casserole dish and add the bechamel sauce on top. Combine until all the cauliflower florets are well coated with sauce.
Add the rest of the vegan cheese on top and optionally, a few butter crumbles.
Bake for abour 20 minutes.
Add some fresh herbs such as sage, oregano, rosemary, or basil, serve and enjoy.