Actually, no, for these three specialties, I think the one prelim year they do is enough because each of these fields practice in a controlled environment. Every physician should have at least one year of general "nuts and bolts" training to learn how to deal with emergencies and common complications. Or would you like to see a dermatologist who has never had to deal with anaphylaxis before? Also, don't Optho people have to do a surgery prelim year? That would make a lot more sense than a medicine year for them.
I would argue that cardiology and GI and other medicine specialties are different. When you are talking about the heart and vasculature and GI tract or whatever, you are not operating in isolation. Renal disease affects cardiac disease, and your treatment of cardiac disease may affect all other systems in the body, etc, etc. In fields like Optho or Derm, you are operating in relative isolation. Skin biopsies and eye drops do not often worsen hypertension.
Trust me, I have seen enough junk done by cardiologists to screw up other body systems who have HAD 3 years of medicine. I was actually talking to a couple friends the other day, and we decided the perfect system would be one in which you do 2 years of IM, then if you want to specialize you go to your fellowship after year 2. Otherwise you finish normally. I think that would be workable. Also, I have heard numerous people opine that they feel IM should really be 4 years with the explosion of our understanding of pathology and the number of therapies. I mean, 1 year of internship was OK when the only therapy we had was to give fluids and morphine and wait, but things have drastically changed over the last 30 years. I'm not personally in favor of this, but I can see the point.
I'll say it again, if you truly HATE IM, then I think you are fooling yourself about wanting to be a cardiologist or GI. Personally, I tolerate general IM with the goal of mastering it so I can be good in my specialty.