Greg,
be careful using attach() and detach(). From the syntax snippets you
showed it seems that you did create an object "pcat" ("factor
variable"), but you did not change the respective "variable" in your
data frame.
Try to remove "pcat" and see what happens do the results of lme()!
Dirk