The first reason for outsourcing your SEO to experts is that they know very well what works and what not. They stay on top of the news, so they are the first to know when Google implements algorithm changes that require specific actions from your side. If you were to read all SEO news and apply what you learn, you'd spend most of your time doing this. Who would take care of your business during all this time?
Small business owners should realize they can't make it big without a strong online presence. They need to be exactly where their clients are, so they can't afford to ignore the online environment anymore. When people search the web for various products or services, they usually buy from the website that has the best offer. If you aren't in the SERPs, you don't exist. This is why SEO is so important for all businesses, regardless their size and industry.
However, SEO is a complex business. You can learn the basic level in a matter of hours, and you can apply this knowledge to your website in as little as one week. This is going to help you advance a little in the SERPs, but if you want to run for the top positions, you need a lot more than the basics. You need a professional SEO firm to help you.
Last but not least, good SEO experts know the fine line between white hat and black hat activities. This is something you couldn't figure out by yourself. You could easily imagine some link would be very good for your rankings while in reality it might attract a severe penalty from Google. Some website never recovers from such penalties, so you risk to lose your whole business or, at least, a good part of it by trying to play it by ear instead of hiring a professional company. You wouldn't be your doctor, so why would you do SEO by yourself and risk to lose your website?