Despite the good things with Asterisk many of the issues mentioned here are right on. Support can be a hassel, and there are some things Asterisk doens't do well. Callers on-hold often hear significant static or white noise, RTP streams usually pass through the servers so high loads/peak calling can impact performance, and you are, as you mention, left with dealing with a 911 issue.
One option you haven't looked at is a hosted key-system or PBX platform. They offer a lot, remote access via the web and practically zero integration no truck rolls, etc. and usually have more benefits than any IP based premise system does. Hosting providers tend to be regional, if you want to PM me I can make some suggestions, not sure where you are located.