Heat the olive oil in a large stockpot set over medium heat. Add the onions, garlic, leeks, salt and pepper; cook until the onions and leeks are soft and fragrant and start to become translucent, about 5 minutes.
Add the cauliflower, vegetable broth, water, vermouth (if using), Dijon mustard and onion powder; stir to combine, increase the heat and bring to the boil, then reduce the heat to medium-low, cover and simmer until the cauliflower is really tender and slightly overcooked, about 12 to 15 minutes.
Reduce to a smooth puree with the help of a stick blender - alternately, you could also use a food processor or blender) and then add the milk and stir until it's completely incorporated.
This soup can be eaten hot or cold. If you choose to eat it hot, you can serve it immediately. If you choose to serve it cold, chill it for at least 24 hours and then add more milk, enough to get the desired consistency - about 1 cup should do the trick.
Garnish with a few drops of extra-virgin olive oil and a pinch of finely chopped leek leaves, if desired.