I suggest assigning permanent drive letters...to each of your removable devices...starting from the end of the alphabet.
Each time that a removable device is attached, XP does a roll count. If the drive letter reflected on that drive (previously) has now been assigned to a connected drive...XP will now assign the next letter that is deemed to be free.
So, if any user starts from the end of the alphabet, none of those letters will be viewed as assigned...and XP should allow the letter assigned to stand. A drive designated Z should always be seen as Z, and so on.
I use this system with my hard drives also.
FWIW: The C: drive will always be C:, while the D: drive should be the optical drive...which should have been the only other drive installed on that system when XP was initially installed.
As for the DVD drive...http://support.microsoft.com/default.aspx/kb/929461. This is a pretty standard situation many of us have found ourselves contronted with (it is not restricted to Vista).
Note that the solution involves a registry edit...take all normal precautions when preparing to make such, including backing up your registry by using a tool such as ERUNT Registry Backup Tool - http://www.snapfiles.com/get/erunt.html