Um… be very careful with that. Normalization is a can of worms that can lead to surprising results. Many protocols that base themselves on Unicode explicitly forbid normalization and define equality in terms of codepoint-by-codepoint comparison.
I can see using normalization in a data-acquisition UI or database search interface but it's hard to imagine many other situations where it would make sense. Use the bits you've received over the wire, don't fuck with them.
One you've looked at normalization you're on a slippery slope that could lead to (*gasp* *shudder*) case-folding. And you definitely don't want to go there.