Draw the last header separator in the empty header area instead
Currently the separators in headers are drawn at the right edge for each section. That makes it visible on the rightmost edge of a header, directly adjacent to the surrounding frame, surrounding in a 2px wide line. (For RTL it's the reverse) Avoid the double line by moving the separator to the adjacent "HeaderEmptyArea" instead, which is only visible when necessary. As a side effect, this commit fixes the check for whether a section is "last" for invisible headers and RTL layouts.