Thanks Garkin. You really made that easy to understand.
Though I found something odd in my first implementation. With a line thickness of 2+, everything looks like nice, even squares (except on the bottom and right which is expected with screen dimensions).
Thickness 2
With one thickness, you can tell that it doesn't seem to make nice squares. I looked and made sure that the line data is correct.
Thickness 1
Sorry about using links. I'm not very proficient at uploading images to these posts.