How are calls currently routed to the queues? Do callers make a choice from an IVR, or do they call a dedicated phone number that is routed to the queue?
It should be possible to update the inbound rules, or a Digital Receptionist, with a CFD. However, the most straightforward solution would be to simulate a Digital Receptionist in a CFD. The CFD would check a setting in a file or database that indicates where to route the call.
How that setting is updated is up to you. You could use the same CFD with an unpublicised option (8 for example) that when pressed toggles the setting. Or you could create a 2nd CFD that when called updates the setting for the first CFD. Or you could create a web page that toggles the setting.
Changing inbound rules with a CFD is possible, but would require the use of the Call Control API and that would require a higher level of expertise. That not directly supported in the CFD.