Preheat the oven's broiler to high and set the oven rack about 6 inches from the heat source.
Prepare the pasta according to package directions, reserving 1/2 cup of the cooking water. Drain and return to the pot. Set aside.
Into a large, deep skillet over medium-high heat, add the olive oil. When the oil is hot, crumble the sausage into the pan. Using a spatula to break up any large clumps, cook the sausage, stirring frequently for 6 minutes, until cooked through. Remove the cooked sausage from the skillet, leaving the sausage drippings in the pan.
With the heat still on medium-high, add the mushrooms and onion. Cook and stir for 1 minute, until mushrooms begin to release their liquid.
Pour in the Marsala wine and continue cooking for an additional 2 minutes, until reduced by half.
Add garlic and continue cooking for an additional 30 seconds. Be careful here to not let the garlic burn.
Return the sausage to the skillet with the mushrooms.
Pour in the evaporated milk and reserved pasta cooking water.
Stir in 1/2 cup of the mozzarella and all of the Parmesan cheeses.
Season with salt and pepper then stir to combine.
Reduce the heat to low and simmer for 3 minutes until the sauce begins to thicken.
Pour into a 9x13-inch baking dish.
Broil for 5 minutes, until the cheese is bubbly and light golden brown, then serve.