£ never used to cause me a problem on the old RH9. But these days most web servers seem to be set to en_us.UTF-8, where outputting £ will give you a nasty ? in the browser, needs to be £ these days.
On a side note just noticed something annoying about HTML::Entities, if your input is already encoded, such as £, you'll get £, thought it would have checked for encoded characters and skipped them?