The problem by doing this in this way is that the order of fields is or may be different between datasets. We have created some Python glue that takes care of that. You can find our github repo at MMTIS/badger the file is gtfs_import_to_db.py
While we initially did all our processing in DuckDB, the issues found and reported for processing huge non-csv files, made us look at alternatives. Still for CSV processing DuckDB makes sense.