Here is a counterexample copied out of a Sage session:
sage: T = StandardTableau([[1,2,3,7,9],[4,5,8],[6,11],[10]]); T.pp()
1 2 3 7 9
4 5 8
6 11
10
sage: T.standard_descents()
[3, 5, 7, 9]
sage: T = StandardTableau(T.bender_knuth_involution(9)); T.pp()
1 2 3 7 10
4 5 8
6 11
9
sage: T.standard_descents()
[3, 5, 7, 8, 10]
sage: T = StandardTableau(T.bender_knuth_involution(10)); T.pp()
1 2 3 7 11
4 5 8
6 10
9
sage: T.standard_descents()
[3, 5, 7, 8]
sage: T = StandardTableau(T.bender_knuth_involution(8)); T.pp()
1 2 3 7 11
4 5 9
6 10
8
sage: T.standard_descents()
[3, 5, 7, 9]
Some comments on the syntax:
T.pp() is short for "pretty-print of T"; this prints the tableau T as a table rather than as a list of lists.
T.standard_descents() gives the descent set of T. Why is it not called T.descents() ? Because T.descents() computes something different (some kind of measure for the deviation of T from semistandardness -- hence, completely useless for standard tableaux). It is an artefact of history that it is the latter method, not the former, which has the shorter name.
Calling the Bender-Knuth involution method is a bit of an overkill here since all we are actually doing is switching two entries; an alternative would be to use T.symmetric_group_action_on_values(p) for a permutation p. Either way one has to explicitly cast the result into the StandardTableau class in order to apply the standard_descents() method, because T.bender_knuth_involution(i) returns a SemistandardTableau, while T.symmetric_group_action_on_values(p) returns just a Tableau.
If you find a descent statistic that is actually strictly semiinvariant under these flips, I'm curious to know.