In a large skillet or medium saucepan, heat 1 tablespoon olive oil over medium heat. Add the onion, carrot and celery and cook, stirring occasionally, until soft and flecked with brown, about 8 minutes. Add the garlic and cook one minute, stirring. Add the beef and continue to cook, stirring, until no longer pink. Stir in the wine, stock, tomatoes, tomato paste, and oregano. Heat just until simmering, half cover, and simmer, stirring occasionally, about 40 minutes until the beef is very tender and the sauce is reduced. If it becomes too dry, add a little water. If the sauce is too watery, remove the lid. Season and stir in the parsley.
Preheat the oven to 400ºF. Spray a large gratin dish with cooking spray.
Cook the rigatoni 2 minutes less than specified on the package directions. Drain well.
Meanwhile, make the béchamel sauce.
In a small saucepan, heat the milk over medium heat until bubbles appear around the edge, then remove from the heat.
In a medium saucepan, melt the butter over medium heat until sizzling but not brown. Whisk in the flour and cook, stirring, 1 to 2 minutes. Remove from the heat and slowly whisk in the milk. Return to the heat and bring to a boil while stirring. Lower the heat and simmer 5 minutes, stirring occasionally. Season with salt and pepper.
Toss the pasta with 4 tablespoons of the cheese, then the ragu and béchamel sauce. When well mixed, spread evenly in the gratin dish and sprinkle with the remaining Parmesan cheese. Drizzle a little olive oil over the top.
Bake for 15 to 20 minutes until the top is brown. Let stand 5 minutes before serving.