new
operator doesn't mean that it can be used only for reference types. It can be used with value types also.
From new Operator
Used to create objects and invoke constructors.
Since every value type implicitly has a public default constructor, all value types has default values. You can read Default Values Table.
For example;
int i = new int(); // i will be 0 for because its default values.
Default value for struct type;
The value produced by setting all value-type fields to their default
values and all reference-type fields to null.
Also From MSDN:
When you create a struct object using the new operator, it gets
created and the appropriate constructor is called. Unlike classes,
structs can be instantiated without using the new operator. If you do
not use new, the fields will remain unassigned and the object cannot
be used until all of the fields are initialized.