This is an important issue cryptographers and security minded people often overlook: the strongest cryptography is irrelevant if it opens you to such social harassment. What we need is practical cryptography.
I have found practical success by booting from an encrypted Linux partition that has absolutely nothing relevant on it, with a weak password I can always enter when requested by big guys with guns. Unbeknown to them on the same partition there sits another encrypted volume, at some offset from the outer's partition start. If I fail to enter the correct password for the outer partition, Ubuntu drops into the command line of the initrd, that is equiped with all the tools you need to mount the real, offset partition:
cryptsetup -o 100000000 create boot /dev/sdc3
So instead of having a nice GUI into which you directly enter the uber-secret password, you press enter a few times in the GUI, drop to command line, issue a single command and only then enter the uber-secret password. A mild nuisance in your bootup process, once you get the hang of it.
It's impossible for any court forensic team, let alone an airport goon, to prove there is actually another partition inside the outer encrypted partition, unless you mount common volumes and cross-contaminate. An important caveat is to properly defragment the outer partition and fiddle with the offset and the size of the inner partition to prevent any conflicts, then avoid writing in the outer partition.