I just wasted a couple hours fiddling with IIS 6's HTTP compression to fix my feed. The trouble originally started when I noticed static files being served compressed by IIS 6 when the file size grew beyond 30K or so although I didn't turn on compression. Since some news aggregators can't read compressed feeds, I looked for ways to disable it.
Googling led me a set of tags inside the metabase.xml file and I set all compression related parameters to FALSE and restarted IIS. Initially, this seemed to fix the problem but after a few minutes, the background compression service kicks in and I am back to where I started.
The annoying part is that IIS serves up gzip or deflate encoded content even when HTTP header Accept-Encoding is missing or empty. I'll have to pore over the HTTP specs to see what the behavior is supposed to be but this doesn't make sense. My guess is that HTTP.SYS's memory cache code is not bothering to check the header. Another crazy symtom is that the involuntarily compressed feed sometimes appear as blank pages on IE.
I am just going to let this problem drop for now because I got work to do.