Are you replicating the C: and the registry?
The GUID for the “P:” drive on the DR server may not be in the replicated registry which can cause it to be added as the next available drive. Drive letter assignments, or specifically drive GUID to mount point assignments, is held in the registry. So if you’re replicating the %systemroot% drive, you’re going to ignore any drive assignments on the DR servers because the registry is going to be overwritten.
If that’s the case, the solution is to replicate the production “P:” drive once. This will replicate the GUID to the paging volume on the DR server. Once the GUID on the DR server matches the GUID on the production server, mount point “P:” will be the same on the production and DR sites. After it’s been replicated one, you can drop it from the list of replicated drives–the point is to get the GUID to match between P: drives at both sites.
Of course, if you’re *really* handy w/ registry delving, you can manually edit the registry on the production server to include the GUID for the remote drive… If you’re not replicating the %systemroot% drive, then P: should not change mount points after you’ve assigned it a location.
You can view existing disk GUID to mount point assignments by using the “mountvol” command on Win2k and Win2k3 from a DOS prompt.