Through some investigation on my computer, I discovered that MIDIService is a user launch agent, so I assume the trip-up was because the root-level launch daemon doesn't have access to user-specific services.
I switched my plist to a user-level launch agent (~/Library/LaunchAgents) and it seems to be working now.