The problem is that your actions are being run in the order you perceive but the styles are just being collected by WordPress and included in a random order.
The order of your add_actions will not be important. I would do this:
function add_all_stylesheets() {
// you omitted this from your question, see below
}
add_action('wp_enqueue_scripts', 'add_all_stylesheets');
Now – if you’d like your scripts to be included in order you’ll need to have them “depend” on each other so they cascade.
function add_all_stylesheets() {
wp_enqueue_style( 'stylesheet-one', get_template_directory_uri() . '/css/stylesheet-one.css' );
wp_enqueue_style( 'stylesheet-two', get_template_directory_uri() . '/css/stylesheet-two.css', array( 'stylesheet-one' ) );
wp_enqueue_style( 'stylesheet-three', get_template_directory_uri() . '/css/stylesheet-three.css', array( 'stylesheet-two' ) );
}
add_action('wp_enqueue_scripts', 'add_all_stylesheets');
Now your “stylesheet-two” depends on “stylesheet-one” and “three” depends on “two. This should be the effect you want.