Cook the rice according to package directions.
While the rice is cooking, bring a medium saucepan of water to a boil. Fill a large bowl with very cold water and ice if you have it.
Boil the broccoli florets for 2 minutes. Remove with a slotted spoon and place into the bowl with ice cold water to blanch them. The florets should be bright green and crispy.
Drain the water from the medium saucepan, give it a good rinse, and dry. In the saucepan, heat olive oil over medium heat until it starts to shimmer. Add onion and saute for 5 minutes, or until it becomes translucent. Add garlic, and cook for 1 minute longer, or until it becomes fragrant. Remove from heat.
Preheat oven to 375F.
In a pot, melt butter over medium heat. Once the butter is melted, add the flour. Mix with a wooden spoon to form a roux. While constantly stirring, cook the roux for 3 minutes (this will eliminate the flour taste in the final dish).
Add ~1/3 of the milk to the roux and mix until combined. Pour in another ~1/3 of the milk, mix until combined again. Then pour in the remaining milk and mix until everything is combined. You should end up with a thick soupy sauce.
Add both cheeses to the sauce. Continue stirring over medium heat until cheese is melted. You should end up with a thick sauce.
Add ground mustard and nutmeg to the sauce, stir until combined. If desired, add freshly ground Himalayan pink salt and freshly ground black pepper to taste.
Add the cooked rice, blanched broccoli, onion/garlic mixture, and beans to the pot with the cheese sauce. Mix until everything is coated.
Pour the mixture into a 9″ x 13″ pan, top with homemade shake and bake, cover with aluminum foil, and bake for about 20 minutes. After 20 minutes, remove aluminum foil from pan, and continue baking for another 10-15 minutes, or until the top is golden brown.