Preheat the oven to 350 degrees F.
Add the potatoes and cauliflower to a large pot and cover with cold water. Season with a big pinch of salt and bring to a boil. Reduce the heat to a simmer and cook until tender, 15 to 20 minutes. Drain the potatoes and cauliflower in a colander.
Add the chopped leek to a small bowl and cover with water. Let sit and soak for a few minutes to remove all the grit. Drain well and pat dry with paper towels.
Heat the olive oil in a large skillet. Add the leeks and saute until tender, 3 to 4 minutes. Season with salt and pepper. Add the kale and saute until wilted down and softened, about 5 minutes longer. Add the milk to the skillet and bring up to a simmer. Stir in the drained potatoes and cauliflower and mash all together. Stir in the sour cream and Parmesan for some extra flavor. Taste and adjust the flavor as needed. Add the whole shebang to a 2-quart baking dish and dot with the butter. Bake until golden brown on top, about 35 minutes.