You can learn a lot even in just one 8 or 10 hour day (when the work day stretches to 14 hours you've learned a whole lot about a career in medicine, eh?)
I just interviewed someone who shadowed a surgical specialist yesterday and the applicant saw some surgical procedures and then got to see the office visit side of the practice, too. From what I heard, even one day can be meaningful.
The thing that you should try to do is to string together a number of days with different subspecialists. If you come in contact with a radiologist, endocrinologist, vascular surgeon, neurologist (just thinking of some of the other areas of medicine that might interact with a cardiologist) ask the doc you are shadowing to introduce you and you may get another invitation to shadow.