Just from the graph, it is not certain the type of coordinates you are using on the x-axis. It can be a numeric x-axis, or it can be a label based x-axis.
If the x-axis is configured using Axis.setLabels, it is a label based x-axis. The labels on the x-axis are just names for human reading, and have no meaning to the code. In this case, the line usually has no x-coordinates (no Layer.setXData). The x-coordinates are assumed to be the array index, so each point in the line with match the corresponding label on the x-axis. In this case, the x-coordinate for the x-zone color should be 13, as it is the 14th label on the x-axis.
If your code uses Layer.setXData to provide numeric coordinates to the line, and/or using Axis.setLinearScale to configure the x-axis (if it is not used, the x-axis will be auto-scaled like the y-axis). In this case, the x-axis is numeric, and you should use the same coordinate in the Layer.setXData array for the x-zone color.