It's probably because replication hasn't started yet. There used to be a function called PostNetBeginPlay() which was perfect for initial client-to-server replication, but I think it's gone. Did they add some function to replace that function, anyone?
Anyway, you can replicate from client to server once replication has started. You can try it with this:
simulated event PostBeginPlay()
if( Role < ROLE_Authority )
simulated function ReplicateClientToServer()
reliable server function ServerSetUTCOffset(int Offset)
UTCOffset = Offset;