Yes, that's the same conclusion I've come to... it's not too bad interpreting responses to commands sent... but when they get interrupted with incoming calls or SMS messages then it can get messy very quickly.
And as you mention there are quite big timing difference so you can have sent a 2nd message before you get a response to the first, etc.
It also seems that there aren't consistent start and end character sequences, so it can be a bit tricky to figure out where messages start end end. In my case I'm only using a fairly small set so will just work through them one at a time.