I would use 'on' for the reason that a weekend is two times (or maybe more). 'At' is more unique, for any scaled-down spot or shorter time, While on/in are employed for for a longer time durations or larger sized Areas. "Let's try to eat at an Italian cafe at 9pm" versus "Let's eat in downtown on Friday".Nevertheless, the expression appears in some