This is intended. The algorithm does not check whether the mark would fit into the axis range defined and therefore automatically creates space for the worst case. Positioning of the marks per series can be controlled by the MarkPositions property; I had thought that the lmpInside option puts the marks in the space BETWEEN max and min, but as I see the axis is rescaled here as well - maybe this is a bug, I'll have to investigate.
Setting AutoMargins to false is not a solution in case of default settings because the label will be truncated if it is placed near the maximum of the series. What you can do is to provide extra margin either by increasing the Left.Axis.Range (Chart.LeftAxis.Range.Max := 1.2, .Min := -1.2, .UseMax := true, .UseMin := true), or by increasing the Margins.Top and . Bottom of the chart. The latter is a bit more predictable: Font height is about 10 px, the length of the link line (Distance) is 10, the mark.Margins.Top and .Bottom are 2 each, plus 2px for the Marks border --> 36 px, plus some safety margin --> 40 px should work for a single-line mark.