They sell leather repair kits (they are usually AS SEEN ON TV, so they are probably crap), but you can usually find a local re-upholsterer who will be able to do a quality job for you. The only problem is that it could be a bit pricy, but it certainly beats buying a brand new sofa.