Unexpected working of SUID

Short answer: you haven’t given execute permission to anybody but the file’s owner.  The mode is currently 4764.  The last two digits have to be 5 or 7 for it to be executable by others.

    Use 4755.  It’s rare that you want a file to be writable by people other than the owner.  There are cases where you want this, but the default should be NN44, NN55 or NN11 (or less) unless you can justify making the file writable.

    Setuid files should never never ever be writable by anybody other than the file’s owner.

The rest of the answer: setuid (usually) doesn’t work on scripts, so, even if you chmod the script to 4755 and give the other user execute permission, it will run as the user that invoked it, not as the owner of the file.