Firstly, retrieve current timezone of user:
Second, change that object of current user timezone:
I think what you are missing is to Commit & Refresh in client!
Note: This will set the new timezone only to your current user.
The above steps will change you timezone but you will not be able to see updated time as per new timezone.
This is because the current user session is not updated when you update timezone.
Try changing the timezone, then logout and login again. Time will now update!! HAHA :D