Well, the mountains surely won't be at their prettiest this time of year. Maybe there'll still be some fall colors, but by December, all you'll see is bare trees. However, you may see some snow, which is definitely a treat for a South Floridian.
I honestly can't tell you about restaurants in Asheville. Sorry. :shrug: I do know of a nice restaurant on top of Mount Pisgah, though. Beautiful views, and good food. I don't know if they'll be open for Christmas, though.
You'll definitely want to check out surrounding areas. There's much more to Western NC than just Asheville. Take a stroll down the Blue Ridge Parkway while your there. Drive to the top of the Eastern U.S. - Mount Mitchell! At 6,684 feet, it's the highest point east of the Mississippi. But bundle up! It'll be mighty cold - probably at or near zero this time of year.
Check out this site for more information about attractions in and around Asheville:
Asheville, Asheville NC, Guide to Asheville North Carolina, and WNC
And remember: Check the weather before you go. Surely you know it'll be a helluvalot colder than South Florida, but Asheville ain't like the rest of the south. Highs in the 20s and 30s and lows in the 10s and 0s are not uncommon in December---nor are big snows.