Well, I have two notifications that simply won't delete, it has been a few days!
In case it matters, the two have the same message and action, no sound, slightly different fire times. Here's the result of get_scheduled. I was trying to prune notifications of the same name. I think it must sometimes work, otherwise I'd probably have more of these.
[{u'action_url': u'pythonista://renewbooks?action=run', u'sound_name': u'',
u'message': u'renew books', u'fire_date':1396594740.000119},
{u'action_url': u'pythonista://renewbooks?action=run', u'sound_name': u'',
u'message': u'renew books', u'fire_date': 1396594740.000122}]
Also... In the code above, I have found that if you store the result of schedule(), you are able to cancel it. But when schedule is called without outputs, no go.
I'm running ios 7.1, ipad 2.