Heat the olive oil in a large Dutch oven or soup pot, over medium heat. Add the ground beef and pork and cook until browned, breaking it up with a spoon as it cooks. If there is excess grease in the pot, carefully spoon off or drain most of it. Season with salt and pepper. Transfer to a plate and set aside.
In the same pot, add the onion, carrot, and celery. Cook, stirring occasionally, until softened and lightly caramelized. Don’t rush this step, if you can - it builds a ton of flavor. Stir in the garlic and cook for another minute, just until fragrant. Season to taste.
Add the tomato paste and cook for about a minute, stirring often so it doesn't burn, until it darkens slightly and coats the vegetables.
If using, pour in the white wine, scraping any browned bits from the bottom of the pot, and let it simmer for 2 to 3 minutes, or until slightly reduced.
Add the crushed tomatoes, broth, Italian seasoning, and Parmesan rind, if using. Return the browned meat to the pot, stir to combine and bring to a boil. Once boiling, lower the heat to a gentle simmer.
Let the soup simmer, partially covered, for 15 to 20 minutes so the flavors can meld and the broth can develop.
Stir in the mafaldine or broken lasagna noodles and cook, stirring often, until almost al dente, about 1 to 2 minutes less than what the package says.
Stir in the heavy cream, if using, and the grated Parmesan until the soup is creamy and well combined. If you prefer a more brothy soup, add a splash more broth until it reaches your desired consistency. Taste and adjust seasoning as needed.
In a small bowl, stir together the ricotta, mozzarella, Parmesan, a pinch of salt, and black pepper to taste until well combined.
Ladle the soup into bowls, then top each serving with a generous dollop or two of the ricotta mixture and a sprinkle of fresh basil. Serve hot.