относительно недавно смотрел код селери 4.х
Там тупо сделано, аля
for queue in queues:
task = queue.get(no_wait)
if task:
schedule(task)
но я не думаю что твоя идея реализуема на абстрактных очередях. Так как тебе надо попытаться взять сообщение из Low priority queue. Проверить время создании задачи и запихнуть её обратно, если время не пришло..