take a look here:
http://codex.wordpress.org/Function_Reference/query_posts
you need to change orderby=meta_value to orderby=meta_value_num -> than you value gets treated as an integer not a string!
query_posts('meta_key=wpfp_favorites&orderby=meta_value_num');
i would pass an array instead of a string like
query_posts( array( 'meta_key'=>'wpfp_favorites', 'orderby'=>'meta_value_num' );
you dont have to but its easier to read and WordPress converts that string to an array anyway….