The canvas doesn't really work for things like this, once you put your controls inside a canvas you ignore all layout. Can you instead put your poly lines inside a grid and use the margins to position them?
<Viewbox Stretch="Uniform">
<Grid Margin="10">
<Polyline
Points="{Binding Path=Points2}"
Stroke="Green"
StrokeThickness="2" >
</Polyline>
</Grid>
</Viewbox>