Preheat oven to 400°F. Lightly grease a 2-quart baking dish.
Toss cauliflower with 1 tbsp olive oil and a pinch of salt and pepper. Spread on a sheet pan.
Roast until crisp-tender and lightly golden, 12–15 minutes. Meanwhile, start the sauce.
Melt butter in a saucepan over medium heat. Stir in garlic and cook 30 seconds.
Whisk in flour for 1 minute. Slowly pour in heavy cream, whisking until smooth.
Add Dijon, onion powder, paprika, salt, black pepper, and red pepper flakes. Simmer until slightly thick, 2–3 minutes.
Remove from heat. Stir in 1¼ cups cheddar and half the Parmesan until melted and creamy.
Transfer roasted cauliflower to the baking dish. Pour sauce over and gently toss to coat.
Combine panko, remaining Parmesan, parsley, and 1 tbsp olive oil. Sprinkle over the casserole. Top with remaining cheddar.
Bake until bubbling and golden, 15–18 minutes. Broil 1–2 minutes for extra color if desired. Rest 5 minutes before serving.