There are some decent games for iDevices but they are amid a sea of casual crap. Funnily enough, the greatest games and the worst are available for about the same price -- $0.99-4.99. And every now and then gems are changed to FREE for the full version so you can fill up a nice library of games w/o paying a cent.
Now the bad... Along with the lack of physical buttons which sucks for anything action oriented there is another big drawback to gaming on iDevices. Just like any computer, it runs differently for everyone depending on all of the variables going on on the particular device. For instance having push notification turned on (for those that don't know what that means it is a service that runs in the background to allow apps to immediately notify you of incoming mail, RSS feeds, etc.), installing plugins on jailbroken devices, or even just simply adding apps to unjailbroken devices alters how it functions. This makes for a lot of undesired effects in certain instances: stuttering, unresponsiveness, apps closing, and sometimes even rebooting the gui or device completely. Not to mention that different iDevices have varying cpu speeds, graphics accelerators, and amounts of RAM. IMO this is the major reason why it will never be able to top any other handheld for hardcore gaming as devices that are made foremost for gaming are made to be the same across the board from one device to the next to ensure that games will run smooth on any one device no matter what.