A tus apuntes añado que hay que poner también el enconding que quieres usar para el fichero de idiomas usando lo de gettext:
Código:
// Set language to Spanish
//setlocale(LC_ALL, 'es_ES'); // es_ES not in the server
setlocale(LC_MESSAGES, 'es_ES.utf8');
// run ok with LC_MESSAGES
// Specify location of translation tables
bindtextdomain("myAppPhp", "includes/locale");
bind_textdomain_codeset("myAppPhp", 'UTF-8');
A proposito de lo de la librería de gettext... me pasan cosas extrañas como el que no me obtenga correctamente los literales que voy cambiando, que no se muestran los cambios 
Bueno, sigo aportando info 
Parece que Gettext se cachea y no recoge nuevos cambios hasta reiniar Apache. No obstante, hay opción de evitar esto y en ello estoy, probandolo 
Bueno, parece que funciona. Por lo menos me ha echo parte de las cosas...
La solución
Marcadores