Hola.
Yo en mi aplicación tengo una copia de una base de datos vacía, así que para crear una nueva bbdd por código, solo tengo que copiar la base de datos en blanco.
Puedes probar a conectar a una base de datos existente y desde esa conexión lanzar el create database.
Puedes ejecutar el comando externo isql.exe para ejecutar un script de creación de la base de datos (aunque tendrás que distribuir con tu aplicación el isql.exe para asegurarte de tenerlo disponible).
También puedes probar usar directamente el api de Firebird, saltándote dbExpress.
http://stackoverflow.com/questions/4...ress-in-delphi
Finalmente parece que en DBX4, a partir de Delphi 2007, ya se puede hacer. Pero no logro encontrar el artículo que citan en los blogs de Embarcadero (es como si todas las entradas de la epoca Borland/CodeGear hayan sido eliminadas). Parece que esa funcionalidad viene en dbxcommons.pas
http://es.w3support.net/index.php?db=so&id=400114
Saludos.