Since you're manually constructing your JSON (which you shouldn't do, really), you have to ensure Message
contains the proper formatting for the portion of the JSON it contains.
string Message = "Hello World";
will result in JSON that doesn't include quotes around a string, which is invalid. Ie:
{ "message" : Hello World }
You could add quotes manually, but what you should do is use a JSON library. .NET has a simple one in JavaScriptSerializer. With it you can do something like this and never worry about whether your Message
contains the proper formatting.
var obj = new { message = "Hello World" };
var serializer = new JavaScriptSerializer();
var json = serializer.Serialize(obj);
push.QueueNotification(new GcmNotification().ForDeviceRegistrationId(RegID)
.WithJson(json));