Heat the oven to 350 degrees
Shred 2/3 of the cheddar and cut the rest of the cheddar into cubes. Set aside 1 cup of shredded cheddar for the top of the mac and cheese
Shred the mozzarella cheese and reserve 1 cup for the top
Add salt to a pot of water and bring it to boil.
Boil the elbow macaroni for 5 minutes then drain it
Warm milk in the microwave or stovetop for a minute or two but do not let it boil
Melt the butter in a cast iron enamel Dutch oven then mix in the flour. Cook for 2 minutes stirring with a whisk constantly. Don't let it brown
Whisk in the milk
Pour the milk into the butter/flour mixture and stir. Add shredded cheddar and mozzarella
Stir in shredded cheddar simmer and stir until you have a smooth sauce.
TURN OFF THE HEAT
Stir in the cooked macaroni, the cubes of cheddar cheese, the shredded mozzarella and grated Parmesan if you are using it
Stir in the dry mustard, white pepper, granulated garlic and onion powder
Smooth the top and sprinkle the reserved shredded cheddar and mozzarella on top of the mac and cheese
Bake for 15 - 20 minutes at 350 degrees to melt the cheeses then broil for 1 to 2 minutes to brown the cheese