The Siglent SDG2xxx's DDS implementation causes frequency errors at low frequencies. I put a table of errors in the SDG2xxx thread. IIRC, they become quite significant with frequencies less than 10 mHz or so. I don't know if other generators have this issue, but it is something to watch out for.
If you want a square wave, you can add a comparator/buffer IC to make edges faster (with a phase noise penalty). Some generators even do this internally.
However, for most DDS generators, the rise time is inversely proportional to the max rated bandwidth of the generator.