The bytestring instances are what it's most often used for! The haddocks warn about this issue. And: yes, we do want an ASCII case fold. If we didn't, we'd be using Text.
Note: case-insensitive provides ASCII case folding when used on ByteString. However, HTTP headers are in ISO-8859-1. Hence, using this for case folding HTTP headers isn't technically correct: It will fail for headers and other case-insensitive tokens with ISO-8859-1 accented characters., though admittedly in practice one doesn't see them.
That bit of pedantry out of the way....
... let's do this!
I'd like to see the haddock for the ByteString cases better expanded. I'll suggest some alternate language later this weekend.