It's possible to get a finish as good as factory.Just depends on your skill with a can and how much patience you've got.Once you've got decent paint (I normally warm it in a bucket of water and try to warm whatever I'm painting too),and a warm,draught and dust free environment,then it's all down to surface prep.Assuming you've removed all the rust/loose paint.
Degrease-I use brake cleaner or similar solvent on lint free cloth.
Prime,let it dry properly,gently wet flat with say 1000 grit wet n dry paper.Try not to take off all the primer (obviously!) but don't worry too much if it wears through in places.Rubber gloves a good idea as it gets messy and you don't want greasy fingermarks on the paint.Once it's nice and smooth,wipe off all the residue and prime again.Repeat this until you're happy that every imperfection/orange peel has gone.
You can use a high build primer to speed up this process or if there are deep chips/scratches but be careful not to overdo it.Too much paint can be a bad thing.
Same process for topcoat and lacquer although I find once the primer's been done to a good standard the rest of the paint goes on so much smoother and requires less flatting.
It takes time and patience but basically the better you are at spraying the less time you'll spend flatting.