I would guess that the two machines are addressing the drives using different geometries - one may have the bios set to IDE emulation which is one solution to SATA support for DOS boots, and the other bios may use a different addressing scheme.
So if for the sake of argument, one system is addressing the drive using logical block addressing, and the other system is using cylinder/head/sector addressing, it is possible that the old partition table written by one system is not getting overwritten by the imaging on the other system as the drive is being written using two different geometries.
A 500Mb drive has a logical block count that exceeds the block count that DOS can address using a 32 bit address block, which can further complicate issues. The original release of XP also suffered an inability to address a drive partition greater than 132Gb due to the 32 bit issue, and I recall that Promise released a 48 bit firmware update for their IDE controllers to get around this when SP1 was released with 48 bit support.
Sorry to go on, but despite some clever programming in Ghost to get around many of the limitations in DOS, the reason that the latest release of Ghost includes WinPE is that WinPE does not have these limitations and is also aware of the existence of EFI bioses.