Because I know exactly when it WILL be available. If I have to tell the scheduler each and every time when I want a piece of code (that runs periodically) to run, it is not really doing me much good. I might as well just use the standard realtime priority-based scheduler and set the priority appropriately.
But really, the burning question for me is this: What application is this type of scheduling (deadline scheduling) sufficient for? I just don't see one where this is actually more useful that the standard priority-based scheduler.