I think that one of the main problems with the recurring SED discussions of schematic capture & layout programs is the fact that it's often unclear when people make comments what the level of sophistication they're expecting from a tool *is*. It's probably almost a safe assumption that someone who comes on here asking for opinions without specifically starting any particular requirements doesn't require stuff like strongly rules-driven designs, integration with databases, automated differential signal support, high-end scriptability, etc... maybe not even hierarchical design, 4 layer or more designs, etc...
A lot of the choices regarding whether or not a package can scale into becoming a high-end package are made very early on in the development process. As an example, while both Eagle and OrCAD have scripting support, it's almost useless in OrCAD because the commands are little more than what you could do from the regular menus -- there's no way to query the program's internal database, place a bunch of parts automatically and connect them up, etc. in a programmatic fashion.