Like if I wanted someone named Bob to see a cat on the surface and I wanted Jake to see a dog on the surface. I have tried to put the surface GUI in my player's GUI thing and it did not show up on the block.
This would require Local parts. Roblox DOES NOT SUPPORT THIS. But it's still possible but is not guaranteed that it'll work forever. You would need to refer to the Wiki article here
I do warn you, It's pretty advanced. I barely understand half of it.