Combine the broccoli, cauliflower, onion, cranberries, pecans and bacon in a large bowl.
In a separate bowl, whisk together mayonnaise, sour cream, sugar, vinegar, salt and pepper.
Spoon over the vegetables and toss to coat. Cover and chill at least 2 hours before serving.
Store the salad in an airtight container in the refrigerator for 3-4 days. I do not recommend freezing this salad, since the creamy dressing will likely "break" when thawed. The vegetables will also have a watery, soggy texture when thawed.