Ok I definitely feel dumb. My daughtercard had a slightly different 4 pin breakout then I did on my main PCB, and so D+ and D- were reversed and that's what was causing the problem. Thanks for the suggestion, it works now! A reminder to double check the simple stuff before spending hours trying to create a new bootloader.