> When I do the following (for example):
> (put-text-property (point) (1+ (point))
> 'display (propertize "." 'face 'header-line))
...
> But it seems like in this case, the display text property
> is taking priority over the the overlay.
You are using a "replacing" `display'-property spec.
See (elisp) `Replacing Specs'.
http://www.gnu.org/software/emacs/manual/html_node/elisp/ Replacing-Specs.html
Your text that has the property is entirely replaced (for display)
by what is specified for property `display'.