Prepare the cauliflower and cut it into bite-sized pieces. Place the cauliflower pieces into a large pot. Add the diced onion to the pot. Fill the pot with cold water and add ½ a teaspoon of salt and ½ teaspoon of ground pepper to the pot. Bring to a boil and cook until fork tender. Drain cauliflower and place in casserole dish.
Melt the butter in a medium saucepan. Add the flour, ½ teaspoon salt, and 1 teaspoon of ground pepper to the pot. Using a metal whisk mix the flour and seasonings into the melted butter and whisk constantly for about 2 minutes. After 2 minutes slowly pour the milk into the saucepan while whisking. Whisk until combined.
Continue to whisk the sauce until it begins to thicken. Add the cheeses and continue to stir with the whisk until the cheese has melted into the white sauce, and the sauce is lump free. Remove the saucepan from the burner. Carefully pour the hot cheese sauce over the cooked cauliflower and onion. Mix until all the cauliflower is coated with cheese sauce.
Sprinkle the remaining Gouda cheese over the top. Bake at 375°F. for 30 to 35 minutes or until the sauce is bubbling and the cheese on top has melted and turned a light golden brown.