Huntswife. I grew up in that area and am moving back in a week. Mackinac is a spectacular place. When on the island you should try some of Murray's fudge (if you like fudge that is). It is also fun to bike/rollerblade/walk around the island or rent a horse and buggy for a few hours. The island is 8 miles around. There are some neat rock formations on the island as well, they are fun to see and hike up too.
The island has many hotels and bed and breakfasts, however they are all quite expensive (well everyone I have seen) In fact the Grand Hotel on the island has the longest porch in the world! I do not remember how long it is but it is LOOOOONG
Mackinac City recently became the proud owners of a new water park. Last I saw there were wave pools and a few waterslides. That might be a fun thing to do while up there. There is lots of shopping there as well. There is also a fun putt-putt golf course there (oh the memories

)
Fort Michilimackinac (SP) can also be a very interesting tour if you like history. Besides the Mackinac/St. Ignace area there are several fun things to do north and south of there (within an hours drive.) you might try visiting travelnorth.org I glanced at their site today and they seemed to have a good amount of info on the area.
As far as restaurants go I am not very familiar with what is on the island. There is a good fish and chips place in Mackinac city called "Scalawags" (SP) Head to Petoskey (about a 45 min drive south on US-31 and there are several fantastic places to eat. Whitecaps overlooks lake MI which is always nice. The perry hotel has good food (a little pricy though) Then there are the staffords restaurants. There are several in the area all with different names. They are always a good choice.
And if your son is worried, St. Ignace has all the usual fast food joints. If you go to a fast food place in Mackinac city expect to pay a fortune! I think the only fast food in Mackinac City is Burger King and a KFC. The McDonalds closed when I was in 7th grade.
I will stop rambling now. Hope I have been able to help you some. Take care