Thank you for the feedback.The sample provided works as required.
I compared the sample code with the code I am running and detected that besides that I am using MVVM, one other difference is that in my application I am using the LoadOnDemandCommand binded to a ExecuteOnDemand handler:
TreeViewOnDemandCommand = new Command(ExecuteOnDemandLoading, CanExecuteOnDemandLoading);
The expander "+" is shown initially when childer are available but once the child view has expanded the "+" goes away and does not get displayed again, even when the child view is collapsed again.
Further - the default expander (no expander template used) works fine - although it is not what I require (">").
Could the issue be with the implementation of the ondemand loading and the use of the expander template?