Melt butter in a medium saucepan over medium heat. Add onion; cook, stirring occasionally, until soft and translucent, about 5 minutes. Add cauliflower, stock, salt, 1/4 teaspoon pepper, and 2 cups water. Bring to a boil. Cover, and reduce heat. Simmer, stirring once, until cauliflower is very tender, about 15 minutes. Remove from heat, and stir in watercress.
Working in batches, puree soup in a blender, filling no more than halfway each time. Return soup to saucepan; cover to keep warm. To serve, divide among 4 bowls. Garnish each bowl with a sprig of watercress, and season with pepper.