Implement your own Timeline Panel. Its quite easy!
Panels allow you to control layout generically for its children. The ItemsControl for example exposes a property called ItemsPanel that is of type ItemsPanelTemplate. By default this ItemsPanelTemplate contains a vertical StackPanel but can be overridden with your awesome Timeline Panel. They key to any timeline is the x-coordinate.
Using the code below to calculate your x coordinate is half the battle. After that its just a matter of determining overlap so you can properly stack your items on the timeline.
The Avanade Silverlight Accelerator has both a Timeline Control and a StackCalendar Control (think Gannt Chart) which work very nicely.
public double ScaleDate(DateTime date)
{
TimeSpan span = this.StopDate - this.StartDate;
TimeSpan pos = date - this.StartDate;
double posDays = double.Parse(pos.Days.ToString());
double spanDays = double.Parse(span.Days.ToString());
double x = posDays / spanDays;
return x;
}