That swapinterval bit is more like a hint. You can also call it without a param to get the currently used value... well, thats how its supposed to work, but currently only Nvidia actually supports that (havent tested it for more than a year tho... eventually it works now with ATI, too)
On the driver side you usually have 4 possible settings for vsync. Always on, on by default, off by default and always off. Only if its #2 or #3 you can change it from your application.
I'm aware of the semantics of wglSetSwapIntervalEXT. What I don't understand is why code run inside of Mozilla/Firefox would behave differently from the exact same code running inside of IE. On my machine I can see slower performance in Mozilla 100% of the time with no changes to the driver settings. As I said it looks like wglSetSwapIntervalEXT is being silently ignored. I don't know of any bits that can be set in the WNDCLASS or during CreateWindowEx that could affect SwapBuffers, and neither Mozilla or the Java Plug-In is using either DirectDraw or OpenGL itself. I've looked through the Firefox source code and didn't find anything obviously suspicious in how it was setting up its window, and have also looked through the Java Plug-In sources and didn't see anything that I thought could affect the behavior one way or another.
I'll post about this on the NVidia forums this week after the holiday.