All right. After scanning through through the copy of the article linked in the comments a few times, I think I've understood well enough to reproduce the basic argument here at a higher level.
Define $K \subset [0,1]$ to be the usual Cantor set and $f : \mathbb{R} \to [0,1]$ to be the unique non-decreasing extension of the Cantor [staircase] function. The goal will be to construct an open set $E \subset \mathbb{R}\setminus K$ such that for every $x \in K$, the density $d_E(x)$ of $E$ at $x$ exists and $d_E(x) = f(x)$. As $f(K)=[0,1]$, this will answer the question.
Since $K \subset \mathbb{R}$ is closed, its complement is open and therefore may be uniquely written $\mathbb{R}\setminus K = \bigcup \mathcal{I}$ for some set of disjoint open intervals $\mathcal{I}$. For each $I \in \mathcal{I}$, define $E_I \subseteq I$ as follows:
- Define $E_{(-\infty, 0)} = \emptyset$ and $E_{(1,\infty)}=(1,\infty)$.
- For every other $I = (a,b) \in \mathcal{I}$, note that $I\subset (0,1)$ and $f\left(\bar{I}\right) = \{\alpha\}$ is a singleton. Use proposition 1 from the linked article to construct an open $E_I \subset I$ such that
$$|E_I| = \alpha|I| \\ \sup_{a < c < b} \max\left(\left|\frac{|E_I\cap (a,c)|}{c-a}-\alpha\right|,\left|\frac{|E_I\cap(c,b)|}{b-c}-\alpha\right|\right) \leq |I| \\ \lim_{c\to a^+} \frac{|E_I\cap(a,c)|}{c-a} = \lim_{c\to b^-} \frac{|E_I\cap(c,b)|}{b-c} = \alpha$$
Define $E = \bigcup_{I \in \mathcal{I}}E_I$.
For any $x \in K$, we want to see $d_E(x) = f(x)$. It will suffice to show that $$\lim_{\varepsilon \to 0^+} \frac{|E\cap(x,x+\varepsilon)|}{\varepsilon} = f(x) = \lim_{\varepsilon \to 0^+} \frac{|E\cap(x-\varepsilon,x)|}{\varepsilon}.$$
Consider only the first equality.
- If $x$ is the left-endpoint of some $I \in \mathcal{I}$, then when $\varepsilon < |I|$, this equality has the same form as one of the limits that appeared in the construction of $E_I$, so there's nothing further to show.
- If $x$ is not the left-endpoint of some $I$, then the set of $I$ which intersects $(x,x+\varepsilon)$ will diminish to the empty set as $\varepsilon \to 0^+$. At the same time the suprema of all such $|I|$ will diminish to zero, and the largest $|E_I|/|I|$ will approach $f(x)$ since $f$ is non-decreasing. The limit will follow (I'll try to clean this up in a while)
We conclude $d_E(x)=f(x)$, so the result follows that the density of $E$ has every possible value.