Personally I would save myself the trouble and just use box2d to handle the collisions.
Nice reading, and great points. Still I keep my opinion, assuming I would be using the engine I am used to - orx, which uses box2d - I think it is far easier to use the custom tools. Here is my view on each of the topics, considering my former experiences:
Moving Platform Hell - Indeed, platforms are hard to code, two things I would point is, you can have a collider that is not solid, so you are just informed that a collision occoured, using that would allow to determine when the character is on the platform (touching and falling, ok, stop) and code gets easier. Other than that, most engines have the option the reparent an object to another, and they will move together, on orx it is called attach.
Finally, I would like to point that programming it from the scratch would not be easy too.
Walking on Sunshine, Not - Pretty easy to create a fill algorithm to determine the collision forms in your scenario assuming all your slopes are in the same ratio. Use a mesh instead of loads of boxes and you avoid the corner collisions (in all fairness I did had this problem once*).
Tilemap Collisions Ain’t Easy - Same as above.
Physics contact detection is expensive - True, but is not likely it will bottleneck your game. At least in my experience, heavy use of transparencies and particles would kill my performance, not physics simulation.
Physics are alwaaa-a-a-ays glit-tch-tch-tch-y - Tell me again how your new code of collision detection, jumping, running, gravity is guaranteed to be 100% bug free.
There’s got to be a speed limit on everything - Using a set speed instead of adding forces solves this problem, or at least solved for me.
Tweak the hell out of this world - Same as above, and again, you can simply detect collisions and turn off the auto solve part of box2d.
Speaking of Movement - Not sure what to say here, yeah the lib won't read your mind and create exactly what you want outside the box, I guess this is expected. Also, not using the engine, you will have to code things anyways, so I don't see the huge advantage. Finally, his main example of bouncing is just about setting variables to 0 (and in orx case, they default to 0).
Is it too early or too late? - Not much to say, you can set highspeed flag to solve the problem he described.
I can understant the guy's points, I had a lot of trouble using the built in physics the first time (reading this articles, I remembered most of them). But still, I solved them all, and they mostly were because I was using the lib wrong and now that I learned it, I wouldn't imagine creating code for things like collision from ground zero. And even if you don't like the physics simulation, as I said, just turn it off and just use it to detect collisions.
* Video here: https://drive.google.com/file/d/0B0UdeUM9pB-nUk8wVmJMTE4xSmc/edit?usp=sharing