...STDERR refused to be unbuffered
Well, you might be unbuffering your perl code, but Apache could still be buffering the output before it writes it to the error log...
I can't imagine how one is supposed to determine that (how did you?), given that the docs certainly don't say anything about it.
If I can't get something to work according to the docs, then I assume the docs are lying and check the source. Mind you the source of CGI.pm is not for the faint of heart ;). I meant to send in a doc patch to clarify this stuff, but never got around to it. If you can find the time, I am sure Lincoln would appreciate it.
The upload hook seems to be one of those cool things that no one really uses. I guess that is why there is such a lack of info on the subject...