I've rattle canned several bikes. Honestly, the only advantage I can see to doing that today is that you get the satisfaction of having done it yourself.
The only times that I've been satisfied with the final result have come after stripping all of the old finish down to bare metal. I generally use chemicals to do that. It's messy but not too expensive and takes about 1/2 day.
Counting stripper, sandpaper, primer and paint you'll be in the $35.00 to $50.00 range. Frankly, my results while OK do not rival a factory paint job. On the other hand, I don't get the rapid chipping that others have reported from rattle can paint jobs.
I've got a couple of bikes hanging in my shop that I'm thinking of repainting. If I do, I think that I'm going to go the powder coat route.