Libraries is how it works. That's fine. The problem is more with Windows and indexing than the way third party apps work, since they all (and MS's own apps as well) work the same. The solution isn't junction points. It's a location that can be indexed. Junction points means squat in that respect. The next time the Surface reboots, it'll be gone and it won't index anymore.
Folders in a VHD can be indexed - so your best bet at this stage is to create a VHD that takes up all of the SD card (which obviously needs to be formatted as NTFS), and then create folders in the VHD which you then include in the appropriate Libraries. You'll also then need to mount the VHD on boot with a Scheduled Task. A massive hassle for something that should be simple, but this is the only way I could figure out to get content indexed properly even after a reboot.
Now, the follow-on question is, since I've formatted my card as NTFS and have all my files on a VHD, wouldn't there be problems with file interchange? In many cases, yes. Which is why you'll need to enable the Server service and access the Surface via your LAN and then share the folders in the VHD, which is a useful thing to have anyways (and set power settings for the Surface to not sleep when on AC - though good luck getting that to stick :eck
.
Even then, the MS Music app is crap at displaying changes in the indexed content. The Windows 8 music experience really is a steaming heap of turd, something that makes iTunes
10 look like a work of genius...
... and I'm paying 10 bucks a month for it, when they should be paying
me to
Alpha test this pile of crap.