The Magic Method __set( $key, $value ) does not update the user meta in the database. This method sets the key/value pair to the object. It is not calling update_user_meta() or a db update query.
Is there not a function to save a modified WP_USER object back to the database after it has been modified?
See core: wp-includes/capabilities
Catapultparlor 18:05, 25 November 2012 (UTC)