> There are some differences in lexicon and script
Even this is only to a point; namely, all these languages use Latin alphabet, while Serbian also uses Cyrillic (Serbian uses both alphabets). Croatian originally used Glagolitic script (many centuries ago). This Latin/Cyrillic division is caused by Catholic/Orthodox church split and Habsburg/Ottoman empire border rather than being some central feature in languages.