Sounds like the shield has some built in "over current" logic and it is shutting down, as you found with 15VDC input. 15VDC should be sufficient for most scales but you are right that G scale it may not be sufficient. I'd suggest using 12VDC and add a booster to the track. A great one to look at is this one. Note that you *CAN* drive this motor driver board from DCC++ but it will require some modifications to the code and an additional circuit to split the single signal pin into two.