I cannot seem to reproduce the actual problem, but it could of course be that it only happens on some Windows versions. My best guess from your description was that you are probably using Windows 7 x64, so I tried to verify the problem there. But that was just my best guess, I could of course be entirely mistaken...
Anyhow, I guess that for whatever reason, the drive letter assignment somehow gets lost, so that the ImDisk drive with everything is really still there, just not accessible through the original drive letter. One way to solve that particular problem could be to assign a new drive letter for example using my dosdev tool, to make it possible to access it again:
dosdev -r R: \Device\ImDisk0
...or just remove the drive from command line, using device number:
imdisk -d -u 0
But actually, I was under the impression that it would be possible to remove such "lost" devices from Control Panel. But I tested it now for myself and saw that it does not work. It actually used to be possible, but no longer. Since a couple of versions back, the Control Panel applet sends notifications to other applications before removing a drive with a drive letter. This was introduced for better compatibility with applications that keep handles open and need to close them before a drive can be safely removed. Problem is that the logic around that needs the drive to be accessible through the drive letter, which could possibly cause it to work with the wrong drive if many drives have been mounted with the same drive letter.
The problem does not occur for drives mounted without a drive letter in the first place. In such cases, the Control Panel applet does not even try to use a drive letter, but removes the drive by accessing the assigned drive number instead.
So, I am not sure how to solve this. One way could be to add some code to first check if the drive letter is accessible and/or if it still points to the original ImDisk drive, and in other cases open by number and skip the notification logic altogether. I will try to find out something!
Then, to solve your original problem with drive letter lost after hibernation, I think we would need to know (at least) which Windows version you are using!