I'll assume that this is for Ignition V8.1, and so you should be using the read* and write* functions as the ones that you have posted are deprecated.
That being said, everything that you show here should be correct "technically". This would indicate to me that something in the device is writing over your write or you have some other type of race condition. You should only ever write to a tag (PLC or Ignition) from one direction, doing otherwise will cause issues.