The problem, I guess vaguely stated, was that we're not able to back up certain entities on the disk. However, I made an erroneous assumption. The problem was not in the CreateFile call to open the directory...but in the subsequent BackupRead call. Junctions don't apparently play well with BackupRead.
But after figuring that I can actually open the junction, I have alternative ways of recording the junction information. There is a DeviceIOControl call that will get the reparse data out of the junction point. This gives a good example of how.