Prep the vegetables. For the leeks, cut the green tops off. Then cut the white ends in half and wash them thoroughly. (Leeks have a tendency to have sand in the layers.) Chop them into into small pieces.
Set a large sauce pot over medium heat. Add the butter, oil, onions, and leeks. Sauté for 3-4 minutes. Then add the cauliflower florets, potatoes, broth, ½ teaspoon salt, and ¼ teaspoon ground pepper. Bring to a boil. Then lower the heat a little and simmer for 20 minutes, or until the cauliflower and potatoes are fork tender. Meanwhile, shred the cheese.
Using an immersion blender, puree the soup until very smooth. Then blend in the shredded cheese. Stir in the fresh dill, then taste and salt and pepper as needed. Serve warm.
