There have been several questions over the past few days about the proper use of null; here are three (one is mine):
The big limitation (IMO) of a struct is that it ought to be immutable.
I have several times defined and used a user-defined struct, for the reason you suggested (ie. because a struct can't be null); but I was then often (until I learned to never make them anything but immutable) burned by modifying a copy (sometimes an unnamed temporary copy) of a struct instance, instead of modifying the instance itself.