01 - Preheat oven to 375°F. Lightly grease a 9×13 inch baking dish with cooking spray or oil.
02 - Heat olive oil in a large skillet over medium heat. Sauté the chopped onion for 3-4 minutes until translucent. Add minced garlic and cook for 1 additional minute until fragrant.
03 - Add ground beef to the skillet. Cook until fully browned, breaking up the meat with a wooden spoon as it cooks. Drain excess fat from the pan.
04 - Pour in crushed tomatoes, tomato sauce, and tomato paste. Add dried basil, oregano, red pepper flakes, sugar, salt, and black pepper. Simmer uncovered for 15-20 minutes, stirring occasionally until slightly thickened.
05 - Boil manicotti shells in salted water for 1-2 minutes less than package directions. Drain and rinse gently with cold water to stop the cooking process. Set aside to cool slightly.
06 - Combine ricotta cheese, 1½ cups mozzarella, ¾ cup Parmesan, egg, parsley, nutmeg, salt, and pepper in a large mixing bowl. Mix until smooth and well incorporated.
07 - Transfer cheese mixture to a piping bag or zip-top bag with corner snipped off. Pipe filling into each manicotti shell, stuffing generously but being careful not to split the pasta.
08 - Spread 1 cup of meat sauce evenly across the bottom of the prepared baking dish. Arrange filled manicotti shells in a single layer over the sauce.
09 - Spoon remaining meat sauce over the manicotti, covering completely. Sprinkle with 1 cup mozzarella and ½ cup Parmesan cheese.
10 - Cover baking dish tightly with aluminum foil. Bake for 25 minutes at 375°F.
11 - Remove foil and return to oven for 10-15 minutes until cheese is bubbly and golden brown on top.
12 - Let manicotti rest for 10 minutes before serving to allow filling to set. Garnish with fresh basil or parsley if desired.