Your point "b" above raises a couple of thoughts:
1) The approach to Makkasan is really kind of silly. It's a huge station to begin with, and to bring a taxi in from Ratchadapisek to the front-most doors for the Express train, the taxi has to take a large 360° rotation around the building. It must add at least 1 km to the trip, just going around this entire building rather than a direct approach.
2) Getting a taxi from Makkasan: Currently there is no way for a taxi to turn right out of Makkasan onto Ratchadapisek to go toward Petchaburi or Sukhumvit. If you want to go that direction you either need to:
a) get in the taxi and let him take a circuitous route or try to get to a place for a U turn (both adding significant trip time in traffic), -or-
b) walk out to Ratchadapisek and cross the road near the railroad tracks and hail a cab that's already heading south toward Petchaburi and Sukhumvit.