I have iBrewMaster and BeerTools Pro. I use them both because they each have their advantages. BTP has much greater capabilities when it comes to all the calculations. It allows you to define your process in greater detail and I have found it's calculations to be pretty damn accurate in terms of temperatures, times, gravity targets, etc.
Even though iBM doesn't have the calculation bells and whistles that BTP has, it does have a nice recipe editor that will do all the basic calculations for you. But it has some other features that really make it useful. First, it runs on an iPad, which means you can have it handy while brewing. It has an awesome set of timers which are tied into your recipe. So if you have additions to make at 60, 45, 15, and 0 minutes, it will sound the alarm at the correct time and tell you what you should be adding.
But the feature I like most about iBM is the batch calendar. Once you get a pipeline going, you will have multiple batches in various stages of the process. The batch calendar will give you a chronological sequence of upcoming events (dry hopping, bottling, etc.). Suppose you have a batch that should have been ready to drink on 8/13 based on your recipe, but when you taste it on that day, you detect some off flavors and decide that it could use another 2 weeks conditioning. You just update the bottling duration for that batch (but not necessarily the recipe) to add two more weeks, and it will notify you in two weeks that it is ready to try again. If you notice that all your batches for that recipe are taking longer to condition, then you might update your recipe so that all future batches will use a longer conditioning time.