rect = new Rectangle
{
Stroke = Brushes.LightBlue,
StrokeThickness = 2
};
Canvas.SetLeft(rect,startPoint.X);
Canvas.SetTop(rect,startPoint.Y);
canvas.Children.Add(rect);
Не читал, но типо они же выносят в отдельный поток, вызывает ошибки что типо разные потоки и строка дальше может выполнится раньше чем html