We just set up a Canon iR 1024 printer as a shared Network printer. (It was used before by two people and they were connected on the same switch.) Now it is in another subnet and from other subnets printing works fine.
However: auto discovery of the printer does work, in fact the driver does not even detect the printer after specifying the IP address.
I can easily imagine why auto discovery does not work, probably the broadcast packages aren't forwarded by the gateway. But the other thing?
I can ping and port scan the printer the printer from several different subnets...