The solution was to drop, create, and migrate the database before doing the restore. I should have tried skipping the migrate step.
Thanks for your help, @RGJ and @gerhard. Your clues were helpful in my figuring this out.
I guess the reason not to always drop the database first is that you can’t then back out when it fails.