But you aren't returning a collection here;
Public Property Get item(indexorname As Variant) As Collection
    Set item = pSSCC(indexorname)
End Property
You're returning an element from a collection, so it should really be:
Public Property Get item(indexorname As Variant) As String
    item = pSSCC(indexorname)
End Property
Since all you're really putting into the collection is a string. Does that make sense?