Shifting and other modifiers will work ok for USB HID keyboards. Layers, however, won't, so that's why you typically need to connect both halves of a split keyboard.
Also, having two "half-keyboards" takes up less space than using two full ones.
Re: the driver, it's not terribly hard to get the basics working (debouncing, matrix scanning, etc), but you'd probably be better off using QMK, since it's well tested and has pretty much every feature you might need, and then some.