Sorry I forgot to mention this:
I had a grey screen in the first place and I have to install lxde according to this video. After that I realised that the xstartup is not incomplete but having too much content, so I changed my xstartup file to:
#!/bin/sh
#unset SESSION_MANAGER
#unset DBUS_SESSION_BUS_ADDRESS
xrdb $HOME/.Xresources
xsetroot -solid grey
#x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#x-window-manager &
# Fix to make GNOME work
export XKL_XMODMAP_DISABLE=1
#export XAUTHORITY=/home/installer/.Xauthority
#/etc/X11/Xsession &
/usr/bin/mate-session &
IMPORTANT: if you still having the grey screen problem, please remember that your xstartup file needs to be generated not copied. To fix this problem, you can remove the xstartup file first and then start the vncserver, vncserver would create a new xstartup file for you. Modify that xstartup file and restart the vncserver, you'll be happy!