Preheat the oven to 350° Fahrenheit.
Grease a 9x13-inch baking dish and put aside.
To cook the veggies and meat, heat a large deep pan over medium-high heat. Add the mushrooms to the dry skillet. As they heat, the mushrooms will release moisture. Stir them occasionally for 5 to 8 minutes, or until tender, slightly browned, and the most of the liquid has evaporated. Scrape the mushrooms into a basin and set aside.
Clean the skillet and return it to the fire. Add the oil; when it ripples, add the onion and simmer for 6 minutes, or until transparent. Cook for a further 1 minute after adding the garlic and bell pepper. Season liberally with salt.
Reduce the heat to medium and cook the meat, breaking it up with a spoon into tiny clumps. Stop cooking when the flesh is no longer pink, which should be around 8 minutes.
To add the tomatoes and spices, smash them with your hands in the pan (use an apron) and add the leftover liquids from the can.
Simmer for about 20 minutes, stirring in the tomato paste, oregano, pepper flakes, and black pepper. Add the saved mushrooms and cook for a further 2 minutes. Taste and season with salt as required.
Meanwhile, boil the pasta.
While the sauce cooks, heat a large pot of salted water to a boil. Cook the pasta until it still has some bite. Drain.
Assemble the casserole
Return the pasta to the saucepan, add the cooked sauce, and mix. Mix in half of the cheeses, then transfer to the oiled dish. Spread the remaining grated cheese on top.
Bake for 30 minutes, or until sauce bubbles and cheese is gently browned. Rest for 10 minutes before serving.
Leftovers can be refrigerated, securely wrapped, for up to four days. Baked casseroles freeze well. You may even freeze the entire dish to reheat later.