How do I list only children of a specific category in a drop-down?

If you change your single quote marks in to double quote marks it should work :

$cat_id = get_cat_id('library');
wp_dropdown_categories("hierarchical=1&parent=$cat_id");

but if you really want to make it more flexible you can phrase your arguments as an array:

$args = array(
 'hierarchical' => 1,
 'parent' => get_cat_id('library'));
wp_dropdown_categories($args);

and if you want to make it even more flexible to get the current category’s children you can use get_query_var('cat'); assuming that you are in your category.php file, so:

$args = array(
 'hierarchical' => 1,
 'parent' => get_query_var('cat'));
wp_dropdown_categories($args);

tech