In a large pot, bring salted water to a boil. Add dry pasta and cook for 4 minutes, then add the chopped broccoli in as well. Cook for another 4 minutes and drain, then set aside.
In your heavy-bottomed pot, melt the butter over medium heat. Once the butter is melted, add in the flour and cook for 2 minutes until all the dry flour is absorbed and the mixture is a light golden color (your roux).
To the roux, whisk in the milk and heavy cream. Bring this to a simmer and cook for about 3-5 minutes until thickened. You want it to be able to coat the back of a spoon – drag a spoon lightly through the mixture and then run your finger across the spoon; if it leaves a streak that stays put and doesn't meld back together quickly, it's ready.
Add the spices and mustard. Turn your heat down to low and whisk I the salt, pepper, onion powder, and dijon mustard.
Switch to a mixing spoon and add in your shredded cheese, mixing slowly until all combined.
Add your pasta, broccoli, and grated carrots to the cheese mixture and mix together until all the pasta/broccoli/carrots are coated in creamy cheese.