Preheat oven to 350 degrees. Bring a large pot of water to a boil, season water with some salt. Cook the manicotti noodles 2 minutes LESS than the package directions. Drain and set aside until ready to fill. You want them to be under-done and firm for easy filling, and they will finish cooking while baking.
Spray a 9x13 baking pan with non-stick cooking spray.
While the water is coming to boil and noodles are cooking: In a large skillet, cook the Italian sausage, breaking up with a wooden spoon, with the minced yellow onion until cooked through. Stir in baby spinach, it will wilt down to almost nothing. Once wilted, stir in marinara and cook on med-low until heated through.
In a medium bowl, stir together all of the cheese filling ingredients. Transfer filling into a large plastic zip-top baggie. Cut the corner so that you have about a quarter size opening.
Spread about 3/4 cup of the marinara meat mixture on the bottom of the prepared baking dish.
Pipe the filling into each manicotti noodle. Arrange the filled pasta on a single layer into the baking dish. Top with remaining marinara meat mixture.
Sprinkle with 1 cup mozzerella, 1/2 cup parm, and dollop with butter cubes. Cover with foil and bake for 30-35 minutes or until bubbly.
Customize this dish to your liking. Swap proteins, add in veggies, or make it vegetarian.
The marinara sauce that you choose will determine a good amount of the flavor, so use one that you like! I use a spicy marinara for added kick!