I had the same problem. This is the solution that worked for me:
I downloaded the .inf file from release 21 or 22 (just go to Home page and then click on downloads and scroll down to the previous releases. Download the whole thing and then open the zip file, go into drivers and take out the Arduino Mega 2560.inf file and put it on your desk top)
I then plugged in my Mega 2560 and waited for the computer to complain that it could not install it.
Right Click on "my Computer" from the start menu and select "properties" from the drop down menu.
Select "Device Manager" (its on the upper left of the box)
I identified the device that was not working and right clicked and selected "update driver" from the menu
Selected "browse my computer for driver software"
Selected "let me prick from a list of device driver on my computer"
Now here is the the funny part. I had tried this many times before, but this time something different happened. ** I had a list of device types. I scrolled downed till i found the COM device and selected it.
The box went away and returned me to the dialog box that has the button on the lower right side that says "Have Disk"
I clicked on the " Have Disk" button and then clicked on "Browse..." from the new dialog box that popped up I found the .inf file that I had placed on my desktop and selected it.
I then pressed "OK" and then "Next" and the computer took care of the rest. (say yes when it complains that the file is not digitally signed)
Everything worked after that.
I don't know why it worked. I spent a few hours reading posts and trying over and over again, but It may be as simple as the .inf file from the previous release just has the correct code to make it work and the new file doesn't.
I hope this works for you.