Application/MS SQL Server Express Installer
Create the DB, make the DB files part of the installer, copy them into the right SQL Server directory, hope it recognizes it (will it?)


It will not, you will have to attach the database to your server afterwards. You could add a sql script that will attach the files to your server though.


  Let the application test for the existence of the DB, and, if it does not yet exist, run a SQL script (generated by SSMS, modified) to create the database (currently implemented).


This could be a good option. Perhaps even better if you could run the .sql file in your installation, that way your application doesn't have any delay when the users first run it.

I also think it depends on the size of the database files. If it's big you could go for the first option, if not i'd use the second option.