It's really sad that you are the only one who noticed this.
The paper actually makes a pretty good case that you need to be careful with operations that seem cheap but have hidden costs (object allocation), versus others that look expensive but are actually made very cheap behind the scenes (buffering). While this is of course not new, I wouldn't be surprised at all to find this in production code (as they claim), so it's good to raise awareness of the issue.
Also, I was somewhat surprised by the magnitude of the impact. I wouldn't have expected the "disk writes" to be this cheap, or the naive string concatenation to be this expensive, even though the result in general could of course be expected.
Clearly, the authors knew very well what they were doing, and designed the code to illustrate their point. They also explain very clearly what they did and why they get those results, so I really don't see why so many people claim it's deceptive. While not really novel research, I think it's very useful to have this written down so clearly and it's a great resource for new (or even some not-so-new) programmers.