I think I have your solution. Here is some code:
----------------
Dim db As DAO.Database
Dim td As New DAO.TableDef
Dim fd As New DAO.Field
Dim po As DAO.Property
Set db = OpenDatabase("c:\usr\access\test1.mdb", True, False)
Set td = db.CreateTableDef("TestTable") 'Create the table definition
Set fd = td.CreateField("TestField1", dbSingle)
fd.DefaultValue = "999.99"
td.Fields.Append fd
Set fd = td.CreateField("TestField2", dbText)
fd.DefaultValue = "9999999"
td.Fields.Append fd
db.TableDefs.Append td
'I found that trying to create the InputMask field before the table has been appended doesn't work
'It seems to only work afterwards.
'Not that InputMask only works with Text and Date fields, NOT Single.
Set po = db.TableDefs("TestTable").Fields("TestField2").CreateProperty("InputMask", dbText, "99.999,99")
db.TableDefs("TestTable").Fields("TestField2").Properties.Append po