As with so many Italian dishes, begin by making a flavor base, called a soffritto in Italian, by gently sautéing the onion or leek in olive oil and butter in a large saucepan until wilted, taking care to avoid browning.
Add the potato and cauliflower pieces, turning everything over to cover them in the soffritto. Let everything simmer together, turning from time to time, for a minute or two.
Add enough water or broth to just cover the vegetables. Cover and let simmer until the vegetables are perfectly soft, about 15 minutes.
Transfer the vegetables and their cooking liquid to a blender, along with the cream (and grated cheese, if using). Let the blender run until the mixture has turned into a perfectly smooth purée.
Return the purée to the saucepan. Check for thickness. If too thick, add more liquid, which could be more water, broth or cream as you prefer. If too thin, let the purée reduce over a gentle simmer. Check and adjust for seasoning as well.
When you're ready to serve, bring the purée just to the simmer over gentle heat. Serve with one or more of the suggested toppings and, if you like, slices of toasted bread.