You could do it with Snapshots. At least I can on my Stomp. Pretty sure you can as well.
You can set the on/off function for any block to any foot switch, but Im not sure how you would do 3 setting.
For example, I have a BDDI set to on, with little drive, and another block with the same BDDI but a much higher drive (and slightly lower level). I have both set to one foot switch. The patch is saved with the low drive on and the high drive off. Using just one foot switch alternates between the two. Pretty cool feature.