At my job (plug: http://gramtrans.com/ ), we're doing human level machine translation now, if by human you're talking about high school level of quality.
But in difference to Google or Microsoft or all the previous attempts, we're NOT doing Statistical Machine Translation; we make Rule-Based MT.
Google's way is to scan huge amounts of parallel texts for good translation candidates, which works to some degree, but it has an upper limit that no amount of parallel text will help them surpass.
Our way involves writing a huge amount of rules so that our software actually understands the input text, and then rules for how things should be translated. This takes a lot longer to develop as you might imagine, but the results are great and there is no limit to how good it gets...if something isn't quite right, add a rule for it.
However, because it takes so long to develop and that we're only 2 people working on it, we only have a few really good translation chains.