The reason we'd want to infer the create statements via pg_dump is, so we don't need to keep database migration files in sync with a 'create new schema' SQL script. It adds risk that they get out of sync, causing inconsistencies in new schemas created by the library.
Then don't have a "create new schema" script (aside from the very first one) run your migrations even when creating new installations.
David J.