You are right, but the rsync behavior has good reasons, explained in its man page.
Moreover, all UNIX commands have different behavior depending on whether you write or not trailing slashes, at least when the arguments happen to be symbolic links.
To avoid mistakes due to the different behaviors, I use for cp and mv aliases that include the option "--strip-trailing-slashes".
Will there be a directory called dir_a on the server? Well, that depends on if dir_b exists. Run the command again and the result may be different. That's not acceptable behaviour for a tool keep a remote directory synced.
except for the fact that rsync has a very weird (to me) behavior with regards to trailing slashes in copying directories.
most definitely not a drop-in replacement for scp