Sounds quite strange to me. Can we try this order instead (if it's not a big deal)?
1. take a snapshot of the 15.7 environment - full snapshot, not just data files.
2. mount the snapshot on the new machine.
3. bring the old 15.7 data server up and check its validity - if ASE is valid continue to next step, if not - fix it first to see what's wrong.
4. unload ASE 16 binaries from installation disc to another directory (do not overwrite the 15.7 files) - no need to create sample ASE server.
5. change "prevent automatic upgrade" to 0 + turn off disk mirroring if not set to default and shutdown ASE 15.7
6. copy RUN files, CFG & interfaces files from ASE 15.7 to ASE 16 installation directories ($SYBASE, $SYBASE/ASE-16_0 & $SYBASE/ASE-16_0/install)
7. edit RUN file to point to the ASE 16 binaries (basically 15_0 changed to 16_0)
8. source ASE 16 environment variables setup shell & boot ASE server.
9. check the log if the upgrade is performed - if not run upgrade manually.
If it works you may as the next step test it again but mount/unmount user databases first (step 5 - step 8).
By the way, there is a bunch of pre-upgrade steps in the install guide - I recommend following these too after you copy your server to the new machine and before you boot it from ASE 16 binaries.
I am really curious if this will work for you. If it dos not - smells like bug. You will have to open an incident and see what TS asks for (sybdiag output to begin with)...
Update me.
Thanks.