Today, I'm going to an Italian restaurant with a friend from high school. It's been a long time since I've had Italian food.
Correct, acceptable, and natural!
The difference between the sentences
1) "It's been a long time since I've had..."
2) "It's been a long time since I had..."
is that #2 is a straightforward statement of fact whereas #1 contains a hint of longing. #1 hints that you miss eating Italian food, whereas #2 just says that you haven't eaten it.
The reason #1 expresses longing while #2 does not is that #2 only mentions the lack of food whereas #1 expresses the lack of the MEMORY of food. The so-called "present perfect" tense describes experiences. #1 says it has been a long time since "had Italian food" was a (retrospective) experience for you.