So, as things stand, the WordPress Categories widget supports altering sort order, post count and dropdown vs. hierarchical display. But it does not support including or excluding categories.
There is a way around this, though, while we wait for it to show up in the core code! (Everyone thank Bricksmith for suggesting this work-around.)
First, you need to download, upload and activate the php-exec plugin. This plugin allows admins to put php code in an entry or widget and have WordPress recognize it as php and execute it instead of just treating it as plain text.
Next, you go to Design > Widgets and put the Text widget where you want the Categories to appear.
Into the Text widget you paste some variation on the following code:
<li id=”categories-1″ class=”widget-categories”>
Save that and voila, you have a pseudo Categories widget!
In my own case, I wanted to have two Categories widgets, the second one including all the categories that the first one excluded, so I pasted another copy into Text right under the first, with the ID “categories-2″ and the ‘exclude’ changed to ‘include’, and edited my CSS to add #categories-2 everywhere there was a #categories-1.
For a full list of the variables you can adjust in wp_list_categories, see the WP documentation.