Mit den genannten Tipps (`tikz-calendar, datatool`):
Ein sehr minimales Beispiel könnte so aussehen:
![alt text][1]
% Terministe anlegen =========================
\RequirePackage{filecontents}
\begin{filecontents*}{mydata.csv}
\begin{filecontents*}{termine.csv}
Jan1 Feb1 Mär1
Jan2 Feb2 Mär2
Jan3 Feb3 Mär3
\end{filecontents*}
% =====================================
%\documentclass[landscape, ngerman]{scrartcl} %Option ngerman aktivieren!
\documentclass[ngerman, border=10pt]{standalone}
\usepackage{selinput}
\SelectInputMappings{adieresis={ä}, germandbls={ß}}
\usepackage[ngerman]{babel}
\usepackage{translator} %Deutsche Monatsnamen!
\usepackage{xcolor}
\pagecolor{green!70!brown!10!red}
\usepackage{tikz}
\usetikzlibrary{calendar}
\usepackage{datatool}
\DTLsetseparator{ }
\DTLloaddb[
noheader,
keys={Jan,Feb,Mar}
]{mydb}{mydata.csv}
]{Termine}{termine.csv}
%=======
\begin{document}
%=======
\begin{tabular}{c c c}%
\pgfcalendarmonthname{1} & \pgfcalendarmonthname{2} & \pgfcalendarmonthname{3}\\
\DTLforeach*{mydb}{\Jan=Jan,\Feb=Feb,\Mar=Mar}{
\DTLforeach*{Termine}{\Jan=Jan,\Feb=Feb,\Mar=Mar}{
\Jan & \Feb & \Mar \\
}
\end{tabular}
%=======
\end{document}
%=======
[1]: http://texwelt.de/wissen/upfiles/TerminKalender3_1.png