This forum has a good discussion on the topic.
Linked from there are some canoo.net pages.
For people:
Personennamen haben im Genitiv Singular ein s, wenn sie ohne Artikel stehen:
Goethes Dramen
das Reich Kleopatras
Joachims Spielzeug
Elisabeths Thronbesteigung
Personennamen sind im heutigen Deutschen in der Regel endungslos, wenn sie mit Artikel stehen:
die Dramen des jungen Goethe
das Reich der schönen Kleopatra
das Spielzeug des kleinen Joachim
das Leben der heiligen Elisabeth
Vereinzelt kommt bei männlichen Personennamen, die mit Artikel stehen, auch die Genitivendung -s vor (selten, veraltet oder gehoben):
Nachgestellt:
„Die Leiden des jungen Werthers“ (Titel eines Werks von Goethe)
das Spielzeug des kleinen Joachims (selten, nicht von allen als korrekt akzeptiert)
Vorangestellt:
des [kleinen] Joachims Kreisel (gehoben, vgl. Stellung Genitivattribut)
Weiblich auch vorangestellt immer ohne -s:
der [heiligen] Elisabeth Leben (gehoben, vgl. Stellung Genitivattribut)
For geographic names canoo has again a useful link, geographic names with article:
Weglassen der Genitivendung s:
Die Genitivendung s kann bei vielen (vgl. Wörterverzeichnis) mit Artikel verwendeten geographischen Namen auch weggelassen werden. Zum Beispiel:
des Libanons oder des Libanon
des Balkans oder des Balkan
des Engadins oder des Engadin
des Atlantiks oder des Atlantik
des Kongos oder des Kongo
Ebenso:
des Elsasses oder des Elsass
So it seems there's no definitive, set in stone rule.
I didn't find anything about foreign names.