It would probably be faster to do this with string map
and for robustness I think you probably would want to put in the numeric codes for the characters rather than iso-8859-1 encoded characters (since that means if the tcl file encoding is not iso-8859-1 this will not behave as expected).
Heres an example of what I am talking about
set text [string map { \x00e4 ae \x00f6 oe \x00fc ue \x00df ss} $text]
we could definitely use this in openacs.