from the MSSQL manual
When a parameter of the function has a default value, the keyword “default” must be specified
when calling the function in order to get the default value.
This behavior is different from parameters with default values in stored procedures
in which omitting the parameter also implies the default value.
Source: http://forums.devshed.com/ms-sql-development-95/optional-parameters-on-create-function-149019.html