A few thoughts I've learned in the field of recording in the past decade:
1. Mastering (even with a qualified mastering engineer and facility) CANNOT save a bad mix.
2. (as per what Kit said) The mastering engineer has a totally different perspective on your mix. Hence, it would be better to have him do the job than you, provided that he does it in a neutral environment, with professional MASTERING equipment (i.e. high-end A/D and D/A converters, transparent peak limiters, better 'fattening' compressors, superior monitoring, etc.)
3. On the contrary, if the goal of the mastering process is to louden it up to hypercompression, you are essentially aimed at DESTROYING the dynamics of your mix. Thus, it is a tough call to let the mix go through a separate mastering facility. You might pay huge sums for a Mastering Engineer that can make your mix so whimpy, and in some cases, it would be better if the mixing engineer would 'pseudomaster' because he knows the dynamic nature of the mix.
4. But then again, mixing engineers cannot easily louden up a mix because they might not have the proper tools to do so (i.e. better OUTBOARD equipment as seen in mastering houses.)
5. If the client has limited budget, he would settle for a pseudo-mastered mix by the mixing engineer if he feels that the overall harmonic balance (and arguably, loudness) of the mix is up to snuff.