Попробуйте это:
<Extension()> _
Public Function ToList(Of TItem, TList As {New, List(Of TItem)})(ByVal item As TItem) As TList
Dim tList As New TList
tList.Add(item)
Return tList
End Function
По сути, ваш тип возвращаемого значения был универсальным (объявлен как List (of T)).Функция decaration здесь делает это так, чтобы возвращаемый тип был списком расширяемого типа.