To be honest there is no solution that will meet everyone's preferences. However all I know is that the present method is getting negative feedback. This isn't a slant at you, as you provide an awesome addition to this community.
Sometimes you have to be strict and that's that... So if anyone was to come to the forums and ask why they were redirected, I'm sure they would be more understandable based on simply logic (not member and last joined = first choice to be redirected) compared to based on this complex weighting system (again no offense, as I can only imagine the work that went into it) where if you are this class you get this many points, and if you are that you get so many points.
Basically Sammy, I've learnt over the years that gamers either don't understand the backend or don't give a shit. Those who do want a simple explanation. Forgive me if I offend anyone, though even with this website, i've gone down the "awesome" route (from a programming aspect) only to be told or through feedback that "we are happy with a more simple solution".
As they say the best ideas are normally the most simple ideas