Esta é a única maneira como eu consegui criar um usuário, infelizmente ele não usa placeholders para as variáveis do usuário:
SET @user := 'foo';
SET @host := 'localhost';
SET @pass := 'bar';
SET @sql := CONCAT("CREATE USER ", QUOTE(@user), "@", QUOTE(@host), " IDENTIFIED BY ", QUOTE(@pass));
PREPARE stmt FROM @sql;
EXECUTE stmt;
P.S.
{CREATE | RENAME | DROP} USER
instruções devem ser suportadas a partir do MySQL 5.1.12