Calibre automatically tries to match the books when the device is connected. It does this using the title and the author. If those do not match, then the book doesn't match. If you sideload the books, then they should match. But, if you source the books elsewhere, such as from Kobo, then it depends on the metadata they supply. And that usually means the title has something extra in it.
There is one thing specific to Kobo devices, and that is how it handles multiple authors. When importing sideloaded books, Kobo only reads the first dc:creator tag. As calibre writes each author into separate dc:creator tags, that means the device will only see one author. And that means matching the book will probably fail. To get around this, I recommend using a metadata plugboard to set the author who Kobo will read it. The template to use in the metadata plugboard is:
Code:
program: raw_list('authors', ', ')
Use that to set the author.
I have found that doing this reduces the number of mismatches to a manageable level.