Bit timing seems to be in the ballpark for 2400 but apparently the PICAxe has quite a bit of delay between each byte (usually not what you want to see). If the display(s) do work with the PICAxe and the timings you show are correct then you can force PBP to insert extra delay between each byte it sends by inserting the following line.
Code:
DEFINE CHAR_PACING 500
This will insert 500us delay between bytes (when using SEROUT) which should then match the PICAxe timing.

If you switch to SEROUT2 then the above DEFINE doesn't work so check the manual if that's something you're planning to do.

I'm not into PICAxe but if I'd guess the _4 and _16 tacked onto the end of the SEROUT command simply specifies which routine to call based on if you're running at 4MHz or at 16MHz. In PBP you use DEFINE OSC 16 and the compiler automatically handles the timing for SEROUT (and other stuff).