Index.Equal compares columns by position, but the mssql GetIndexes query had no ORDER BY, so the column order it returned was up to the query plan.