I've just tried again with a current iPad useragent string and it fails. What I've just remembered though is that this kludge doesn't change the user agent string reported in javascript. That requires a different fix. I'll look through my old notes. But later in the week.