Microsoft, the kind people that they are, want you to use their own DirectX API and especially Direct Input. So, what the crafty people have done, is made your mouse more processor dependant, and took out the acceleration options from the mouse CPL. Within Direct Input, it gets CPU priority and it doesn't have the acceleration on by default. Since most older games use the older more standard method of tracing mouse movements, they get it from the default Windows mouse interrupt handler. Now, if too much of you processor is elsewhere, your mouse is gonna seem less responsive. So.... here is the fix.
Download the latest intellipoint drivers, install them, then, when the point32.exe (the main exe for your mouse I think), is running, we need to give this CPU priority over Half-Life. To do this, right click the task bar, click Task Manager, click the processes tab, look for point32.exe, right click that, click set priority, and click High. Do this for type32.exe if you have an M$ keyboard. I have both, and I discovered the fix whilst tinkering today
You will also have to add this to the command line of your HL.
This should clear up any of the issues.
For Quake 3:
+_windowed_mouse 1 -dinput