This year I made my own photo calendar, nicely printed on paper (is small sized, a calendar to put on your desk), the files are available as high-res PDFs, for download and use. Then the calendar sources were made available as SVGs, for anyone to use (both in Romanian and English), modify, play with and so on. Using Inkcape may look as a less optimal choice, a photographer would probably have used Photoshop for the task, a FOSS photographer GIMP, a designer Illustrator or Corel Draw, a FOSS designer Scribus, a newbie Microsoft Word, a FOSS newbie Libre Office... you got my point, there are a ton of tools to be used, some Free, some not. Still, my choice was Inkscape, since it is the tool I am comfortable the most for such task and here I will describe the process.
Of course, Inkscape is not the perfect tool for this, its lack of multipage support will make you use multiple files (12 files, one for each month and a cover, at least), self-made templates to keep the look consistent, will not automatically add crop and bleed marks (you can do it manually, but I didn't cover it here, maybe another time) and the resulting files will not be CMYK (if you need CMYK, which I didn't).
Images or not, a calendar is defined by a grid of days, you can have a calendar with no pictures, but you can't have one with no days. So let's start with the most important part: creating a grid of days. I started with a square, you may start from a square too or use a rectangle, depending on the look you are aiming for, want the grid taller or wider. I made it colored to have the next step easier.
With the text tool write a digit (or a letter, whatever you want, a digit may be more useful since most of the text is goind to be numbers). This is the main text, so black is a sensible choice. Choose a font you like and a size that will look good (retrospectively, my choice it for a 36 pt font size was not the best, my final layout would have looked better with smaller letters, but bat taste is a right, correct?). Also, I made the text aligned to right, as that is the look I aimed for (depending on your intended look, it may fork aligned to left or center too). Place the text inside the rectangle whatever you want, only keep in mind its width will change, it should accustom both "1" and "30", so take care with spacing, size and alignment.
You can make now the rectangle white (or if you use a different background, make it that color). Or make it transparent, we don't need it visible any more but only as a spacer and placeholder.
Select the rectangle and the text and group them.
Select the group and make a bunch of tiled clones (Edit > Clone > Create Tiled Clones)
How many clones? Easy: a week has 7 days, sp we need 7 columns, a week is split in 4 weeks and some extra-days, so we need 5 rows for them plus another row for the day names, so 6 rows. Create the tiled clones. Make sure all the other parameters are zero, if needed reset them first.