Bring a pot of water to a boil over high heat. Add the macaroni and cook for 8 to 9 minutes, until al dente. Drain.
Preheat the oven to 400 degrees F.
In a medium saucepan heat the milk with the rosemary and garlic.
Melt the butter in a large, deep skillet over medium high heat. Whisk in the flour and cook for about 1 minute, stirring constantly. Whisk in the milk. Continue to whisk and cook until the mixture is smooth. Stir in 2 cups of the Cheddar cheese, 1 cup of the Asiago cheese and 1 cup of the Parmesan cheese and continue to cook and stir to melt the cheeses. Season with salt and pepper.
Add the cooked macaroni and the bacon crumbles and fold that all in to coat the macaroni with the cheese mixture.
Transfer into a buttered baking dish.
In a small bowl, stir together the bread crumbs and melted butter. Scatter bread crumb mixture over the top of the macaroni and cheese. Top with remaining cheese.
Bake for 30 minutes, or until hot and bubbly.