Error Message: Cannot modify the return value of 'expression' because it is not a variable

For TL;DR:

Example code which raises the error:

public Point Origin { get; set; }

Origin.X = 10; // fails with CS1612
Long Version:

As a matter of fact, the misuse itself is obviously to who familiar with the character of structimmutable. However, the message itself is really confusing.

PS: workaround code

Origin = new Point(10, Origin.Y);