Preheat your oven to 375°F (190°C).
Bring a large pot of salted water to a boil. Add the penne pasta and cook until al dente, about 8-10 minutes. Drain and set aside.
In a large skillet, heat olive oil over medium heat. Add the diced onion and sauté for about 5 minutes until translucent. Add minced garlic and ground beef, cooking until browned, about 7-10 minutes. Drain excess fat.
Stir in tomato sauce, heavy cream, Italian seasoning, salt, and black pepper. Let simmer for about 5 minutes.
In a large bowl, combine the cooked penne pasta with the beef mixture, stirring gently until well coated.
Transfer the mixture into a greased 9x13 inch baking dish. Sprinkle mozzarella and Parmesan cheese on top.
Bake in the preheated oven for 20-25 minutes, until cheese is melted and bubbly.
Let cool for a few minutes before serving.