Právě ICU je důvod, proč mělo i PHP 6 pracovat s UTF-16. Autoři chtěli využít nějakou knihovnu a ICU se jevilo jako nejlepší.
Osobně UTF-32 za žádnou velkou výhru nepovažuji. Pro angličtinu zabírá čtyřikrát víc místa než UTF-8 (pro češtinu skoro taky) a na to, že 4 bajty = 1 znak, se stejně nedá spolehnout kvůli kombinačním znakům. To by šlo až po normalizaci, což by zase znamenalo, že by kombinační znaky byly neplatné (jak říkáte – rozesralo by se to).

