Actually in Bitcoin core 0.12 the "-mempoolexpiry" parameter was introduced which is set to 72 hours by default. So majority of 0.12 users will drop the transaction after 72 hours.
True. Most won't bother to change the default value, so if they happen to be running Core version 0.12.x then they will drop it after 72 hours. however, there are a lot of people out there running things other than Core 0.12.x and there may be people that choose to change their default value. As I said: "There is no specific amount of time that a node is
required to remember your transaction". Nothing in the protocol stops someone from dropping your transaction after 1 hour, or stops them from keeping it forever. And as you pointed out:
Anyone can re-broadcast the transaction so I can't see the use of this parameter.
I suppose the parameter is just to get a significant percentage of the nodes on the network to all drop the transaction after a few days in those situations where it isn't re-broadcast.