Well, IANAL, but I'm pretty sure it doesn't need to be a word-for-word copy. The bar is "confusingly similar." See f.ex: http://www.registeringatrademark.com/trademark-law-basics.sh...
Foo *f = Other Foo();
They're so confusingly similar. ;-) But more seriously, I do agree with your point, if there's confusion (or the possibility), they would have to defend the trademark. I guess I just have a different bar for "confusing" than others.