Yes, encryption algorithms like AES are fast enough to not be the bottleneck. Disc IO is the cryptsetup-method's bottleneck, so you can expect around 30 MB / s. But if someone finds a weakness in AES in the future, it might be possible to tell that this is not (pseudo)random, but just encrypted zero's with a throw-away key.
For a test like you did, you should use the same blocksize for dd in both methods, i.e. 1 MB:
Code:
dd if=... bs=1M ...
Your second test could have been additionally slower because dd wrote 1-Byte chunks.