The need to localize IFS is pretty obvious to me - of course that's given prior knowledge of how it works.
The problem is the non-obvious nature of unset's interaction with scope, (and the lack of documentation). Not much can be done about the former, as it is with so many things.