Bring a pan of water to boil.
Spray a frying pan with low calorie cooking spray and fry the bacon for a few minutes until crisp. Place on a plate and set to one side.
Put 1/4 of the cauliflower aside and blitz the remaining 3/4 of the cauliflower until it looks like cauliflower rice. Place the blitzed cauliflower to one side.
Wipe out your frying pan, spray with low calorie cooking spray and then sauté the onion and garlic on a medium heat.
Once the onion begins to brown, mix in the blitzed cauliflower.
Make up the stock and, alongside the mustard powder, add to the frying pan. Turn the heat down so that the pan is gently simmering and simmer for around 15 minutes.
Add the pasta to the pan of water and cook as per the instructions on the packet. 5 minutes before the end of the cook time, add the remaining pieces of cauliflower that you set aside earlier (not the blitzed cauliflower!).
Once the pasta and cauliflower are cooked, drain well, reserving a few tablespoons of the water in a cup. Return to the pan and set aside.
Mix together the cheddar and parmesan.
Stir the cream cheese into the cauliflower mix, alongside half of the cheddar and parmesan. Tip the whole mix into a blender and then blitz until smooth (it should be the consistency of cheese sauce). This might take a couple of minutes. If your sauce is too thick, then just add a little of the pasta water that you reserved earlier to thin it out a little.
Pour the cheese sauce over the pasta and stir in the tablespoon of buffalo sauce and the cooked bacon.
Pour into an ovenproof dish and sprinkle the remaining parmesan and cheddar mix evenly over the top.
Place under a hot grill until the cheese has melted and is golden brown.