We have two apps approved -- each with it's own path and length of process.
App#1 complexity: high.
Technology: web services,XML, geo-coding, graphics manipulation, sound recording to remote SQL, etc..
First submission: July 9
Rejection#1: our server was down and the app was freezing (our problem)
Rejection#2: app was not written to handle airplane mode (our problem)
Rejection#3: we used a 'add contact' button for 'add email' (our problem)
Approval: Oct 20
App#2 complexity: low
Technology: geocoding, math calculations, location services
First submission: Oct 14
Approval: Oct 28
So, from my viewpoint, Apple is doing a great job. Complex apps require more processing to approve. Self inflicted pain is not anyone's problem but your own and we don't want them approving junk.
Good job Apple.