Because wp_dequeue_style
should run after wp_enqueue_style
ran. So you need to call it with a lower priority so your hook can be applied after it has been enqueued.
try this
add_action( 'wp_enqueue_scripts', 'my_dequeue_scripts', 99 );
function my_dequeue_scripts(){
wp_dequeue_style( 'dashboard' );
}