Jon and Joe,
The reason your code doesn't work is your second line:
newSpatialReference = newSpatialReference.loadFromString('{B286C06B-0879-11D2-AACA-00C04FA33C20}')
This is setting newSpatialReference to the return value of the loadFromString function.
But loadFromString doesn't return anything, it sets the calling object value, so you have a None value
for the rest of your script, which Define projection doesn't like. To unset projection, just call loadFromString:
newSpatialReference = arcpy.SpatialReference()
newSpatialReference.loadFromString('{B286C06B-0879-11D2-AACA-00C04FA33C20}')
That will create the object, then assign the value with loadFromString. I tested it and it works fine with DefineProjection.
Cheers,
Shaun