Use one tablespoon of softened butter to grease a 2 quart glass casserole dish.
Place cubed sourdough bread in the buttered dish and set aside.
In a medium saucepan, melt one tablespoon of butter over medium-low heat, add ground sausage.
When the sausage begins to brown, sprinkle the rosemary, sage, thyme, salt, and flour over the meat. Mix in the herbs and flour while breaking up the meat with a spatula.
Let the meat, herbs, and flour cook on medium to low heat for two minutes.
Add the milk and mix well. Continue to cook on medium to low heat, stirring occasionally, until the milk begins to steam. (Do not allow the milk to boil)
Once the milk is steaming, add the shredded cheese 1/4 cup at a time, making sure all of the cheese is melted before adding more.
After all the cheese is incorporated, remove from heat and let the sauce cool until it's no longer hot to the touch.
Whisk in the beaten eggs until thoroughly combined.
Pour the mixture over the top of the bread.
Use a spatula or knife to lift some of the bread so the liquid can reach the bottom, while pushing some of the sausage to the lower layers.
Cover tightly with foil or plastic wrap and refrigerate overnight.
In the morning, take the casserole out of the fridge about 30 minutes before you're ready to put it in the oven.
Preheat the oven to 350 degrees Fahrenheit.
Bake the breakfast casserole uncovered for 45 minutes, or until the internal temperature reaches 160 degrees Fahrenheit, or a knife inserted in the middle comes out clean.
Let the dish cool for about 5-10 minutes before slicing to serve.