My suggestion is to replace [^4]xxS2 with something else. I remember for some previous things discussed that the carrot (meaning anything-but) did not work tho it looked as if it should work as expected according to the guide. I forget the details. This may or may not be a comparable situation.
For concept testing, try maybe 511 instead of 411 and having the call redirect to your cell. Then you will know if there is something odd with 411 going on. If there is something odd going on, take a look at your OutboundCallRoute for your phone. That is how 911 is typically launched. Higher priority. Right now. In fact, maybe you want to use that for your 411. See
http://www.obitalk.com/forum/index.php?topic=339.0 section B. That would be the foolproof right-now method.
Do you really want a 2-second pause during dialing a longer number to cause the first 3 digits to be dialed?