Zooming function is server-side, therefor there you will always have delay for it (delay is your ping delay). However even with 100ping it's not noticeable that much. But if you play with ping 200-300 - than of course you will see that something is wrong. Also you might want to check your cl_cmdrate, cl_updaterate, rate cvars. I personally would suggest:
cl_cmdrate 100 // how often you send updates to the server (100 times a second) - this one should match your fps for best gameplay.
cl_updaterate 20 // how often server sends information to you (20 times a second)
ex_interp 0.05 // how good should your client smooth stuff (0.05 - 20 times a second)
rate 20000 // something related to internet speed
cl_cmdbackup 100 // just in case
http://forums.steampowered.com/forums/showthread.php?t=1410791