Turned out that nothing was wrong with the procedure. The server that failed turned out to have had a user that was listed in the db as user-deleted, and for some reason the pre-restore event failed, so the new server's passwd file was missing key users. In addition the imap-relocate-maildirs event during post-upgrade failed while attempting to process this user. Once I removed that entry from the db, the post-upgrade completed properly, and the maildirs were in the correct format. I had to fix the missing user entries by hand (useradd), copying the parameters from another SME7 box.
The missing users included:
haldaemon
nut
spamd
qpsmtpd
clamav existed, but had wrong uid, gid, home, and shell.
I suppose that the backup script should either ask the user to run (and verify) pre-backup manually or should check that it completes succesfully before continuing.
Kirk