I think it is a typo.
I put fu=fdS.
Stick it into the identity you made up to find a value to curl(fdS).
Re-arrange to find an identity for (gradf)xdS.
Then stick (gradf)xdS into an integral sign, use your second identity and Stokes theorem, and note that curl(dS) = 0 (I think).
Then the solution should pop out.