Ich vermute mal, dass in deinem enum GER vor ENG steht 
bzw steht GER ganz oben im enum und hat daher die ID 0.
Du setzt also die Sprache für den Spieler erst nachdem du ihm schon einen Dialog anzeigst 
Ich vermute da liegt der Fehler 
Achso und wie in einem anderen Post schon erwähnt, switch ist eigentlich nur sinnvoll, wenn du mehr als 2 Sprachen hast, bei 2 kannste das auch so machen:
Textdraw23[playerid] = CreatePlayerTextDraw(playerid, 224.333312, 183.348114, ((GetPlayerLanguage(playerid) == GER)?("deutsch"):("german")));
Gebe zu, bisschen umständlich, kannst es dir ja theoretisch in einem Makro kürzen:
#define L(%0,%1,%2) ((GetPlayerLanguage(%0)==GER)?(%1):(%2))
Nutzung:
Textdraw23[playerid] = CreatePlayerTextDraw(playerid, 224.333312, 183.348114, L(playerid,"deutsch","german"));
Somit sparst du dir viel ein 