Man muss es halt richtig machen, damit es funktioniert.
Der Fehler lag dann darin, dass ich GetHashCode unzureichend überschrieben habe.
Vielleicht wäre es gut gewesen, eine Funktion "DefiniereIntegerwertFürHashcodeBerechnung" zu haben, die man überschreiben kann.
Aber wenn man weiß wie, dann geht es ja auch so.