I my experience you are absolutely correct. But to make sure the OP understands correctly, it is in trading with limit orders and real money that you will mostly end up buying on the ask and selling on the bid. The TOS paper trade platform will fill limit buy orders on the bid and limit sell orders on the ask, giving you the advantage of the market maker , and two ticks more profit on all winning trades and two ticks less loss on all losing trades. It is then suddenly possible to make a killing scalping.. (on Paper). Something that is nearly impossible to do on the regular TOS platform.
Where you get filled in real life is a matter of where your order sits in the order queue and how many market orders come in to be filled. Lets suppose you are trying to buy with a limit order. If you are early in the order queue and enough market sell orders are available to fill all those buy orders ahead of you plus your order you will get filled on the bid, otherwise you'll have to wait until the inside bid falls through your own bid and you get filled on the inside ask. This latter case is the usual one with the real money TOS platform.
I have written TOS more than once about this and suggested it would be more realistic to have their paper trade fill engine fill resting buy orders on the inside ask and sell orders on the inside bid, but they never made the change. One way to compensate is to subtract two ticks profit from all round trip winning trades and add two ticks loss to all round trip losing trades.
When I am trading in a situation where I normally would have a limit buy order fill on the ask and instead it fills when last drops right to my bid I know that there was a lot of market sell flowing in (because my orders are usually very late in the queue) . That worries me as it is usually an indication that I've got in on the wrong side. I'll start looking for an immediate exit. (The same thing can happen when sitting on a limit sell order and you get filled uncharacteristically on the ASK because there were a lot of market buy orders coming in.)