iPhone DTMF Issue

We are having an issue with accurate recognition of DTMF tones on our IVRs when entered from an iPhone. Specifically, we are seeing the DTMF digits duplicated so if, for example, we are looking for a 4 digit PIN like 3442, an iPhone user correctly enters the 3442 but we see 33444422.

According to various iPhone forums, this is an issue that is known and is caused by iPhone using DTMF long tones. By experimentation, we found turning off the iPhone 3G mode, it will use short tones and the world is fine. However, trying to explain that to users [our audience is the general public] is a somewhat challenging prospect.

I realize this is Appleā€™s problem but is there a workaround available from the asterisk end? Detection of use of DTMF long tones and responding accordingly for example?