Said otherwise: the difference between case-insensitive and case-preserving is that if you copy a tree from a case-sensitive fs to a case-insensitive fs and back, the result is a mess. If you copy a tree from a case-sensitive fs to a case-preserving fs and back, the result is the same tree (iff no files differ in case only of course).
<complement to previous comment>
Said otherwise: the difference between case-insensitive and case-preserving is that if you copy a tree from a case-sensitive fs to a case-insensitive fs and back, the result is a mess. If you copy a tree from a case-sensitive fs to a case-preserving fs and back, the result is the same tree (iff no files differ in case only of course).