The DatabaseConnection_dblib->preprocessQuery method currently adds the defaultSchema prefix to the following functions:

    $functions = array(
      'SUBSTRING',
      'SUBSTRING_INDEX',
      'GREATEST',
      'CONCAT',
      'IF',
    );

This causes queries using SUBSTRING to fail with a 4121 error:

Msg 4121, Level 16, State 1, Line 1
Cannot find either column "dbo" or the user-defined function or aggregate "dbo.SUBSTRING", or the name is ambiguous.

As SUBSTRING is a built-in function available in SqlServer 2008 and higher, it is sufficient to simply remove SUBSTRING from the array of functions to be schema prefixed (i.e. delete line 291 in database.inc)