Looks like I have found the reason for this one.
In this case we are trying to patch from version 12.3.0.51 to 12.3.0.52.
But in our application the Product name is made up of the app name and the version.
e.g the $TITLE$ is "AppName R12.3.0.51".
this is applied in the script.
In the case of this upgrade the Product name is to change from "AppName R12.3.0.51" to "AppName R12.3.0.52".
The reason for this is that if you have multiple full versions of the software installed, e.g 12.2.0.48, 12.3.0.18, 12.3.0.51. (done using new instances) changing the Product Name in this way seems to be the only way to differentiate the versions in the Add/Remove Programs section.

Please correct me if I am wrong here.
This is the case when the please insert source media appears.
If I leave the version at R12.3.0.51, the patch seems to work.
Is there any way round this?
How can I patch from 12.3.0.51 to 12.3.0.52?