One big thing about supercapacitors is the slow decay of voltage and also the slow rise of voltage when power is applied. Will your microcontroller, with or without a brownout reset, actually stop operation gracefully as the voltage drops, and, more importantly, many need a certain minimum power supply rise time to prevent internal race conditions that lock them up.
Your supercapacitor of say 1F has to be charged up, and via USB and some sort of current limiting, 100mA is the maximum current you can draw before the USB controller has to be powered up to negotiate a higher power consumption after enumeration. Though many ports will allow 500mA, most laptop chipsets do not. 30 seconds or so of power draw before the microcontroller powers up, if it does so at all with that slow a ramp, is not going to go down well. even worse some parts may stop running on voltage decay, while others keep on, so you might run into cases where say the slow clock keeps running, but the ALU has bits dropping out as the voltage decays, silently corrupting your stored data in RAM, or your EEPROM might only be able to get half an erase cycle done before dropping out, totally corrupting your stored data, and possibly erasing unwanted areas of the chip as well as the isolating transistors are not fully biased off.
You would have to add a series resistor to the supercapacitor to limit current, and a physical reset switch to short the power rails, to be able to recover from these deep discharge events, or even to allow first power up properly, but, so long as your application uses the supercap as just a "we will have no power for a short period" backup, like changing a regular larger battery, it will work