Solution 1: Markup for quotations
One simple way to do this would be to not use the Mapping=text-tex (which, BTW has been replaced with the Ligatures=TeX option) and use the csquotes package to manage your quoting. Here's an example:
% !TEX TS-program = XeLaTeX
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Linux Libertine O}
\usepackage{csquotes}
\MakeOuterQuote{"}
\begin{document}
\noindent I would like an apostrophe to appear in the word ap'ple (U+0027), but a
right proper quotations marks (U+2019) when I quote a word with double quotes:
\enquote{orange} or single quotes: \enquote*{orange} or double quotes using the
"Active Quotes" function of the package.
\end{document}

Solution 2: Define an apostrophe font and markup
Another way would be to load your font twice, once using the Ligatures=TeX and the other without, and then define markup for the apostrophe.
% !TEX TS-program = XeLaTeX
\documentclass{article}
\usepackage{fontspec}
\setmainfont[Ligatures=TeX]{Linux Libertine O}
\newfontfamily\quotefont{Linux Libertine O}
\newcommand{\apostrophe}{{\quotefont'}} % or just use {\quotefont text}
\begin{document}
\noindent I would like an apostrophe to appear in the word ap\apostrophe ple
(U+0027), or {\quotefont ap'ple} but a right proper quotations marks (U+2019) when I
quote a word with double quotes: ``orange'' or single quotes: `orange'.
\end{document}

In this solution, the markup for the apostrophe isn't actually necessary, since any text that is grouped with {\quotefont ... } will use the single quote as typed.
'(U+0027, the one that you get by hitting the'key, which is the one that appears in the input)? How should LaTeX distinct between the two types of input? – Qrrbrbirlbel Feb 24 '13 at 21:09