I used Data Range: Last Month and Dimension: Month in two of my projects, comparing metrics: page views, visits, unique visitors.
First project: freeform table date set to Last Month, with breakdown of last month, 2 months ago, last month last year using date ranges.
Second project, freeform table set to Last Quarter. In this table, I used month dimension instead, which automatically produced 3 months for that quarter in each column, side by side.
Problem: comparing both reports, monthly and quarterly: for the exact same month, let's say June or May: we get slightly different numbers for each metric. It seems that workspace is calculating numbers differently for June (dimension) vs. Last Month (June, time range). I did not observe that they are being rounded and the difference is always after the second comma. Ex. X,X,644 vs. X,X,636 or X,X,569 vs. X,X,553 or X,X,148 vs. X,X,143
This is happening due to a somewhat complex and hidden mechanic in Analytics called 'lookback windows'.
Lookback windows are the amount of time that Analytics checks to see if there's historical data on a user. This lookback window defaults to the start of every month.
When you drag over date range components into workspace, they only look at that specific date range without taking into account the lookback window. You'll want to be extra careful with date range components, because they might exclude data that you might want from outside that date range.
If you use date range components and keep the workspace project to the start of each month, I anticipate you'll get the same data. If you change the date range to something besides the start of the month, you might start to see miniscule differences between those two items.
I've created a custom date range Last Month (last year), rolling monthly. What I discovered is that whenever I use it in the table, it changes numbers for other metrics. As soon as I remove it, numbers change again.
Another experiment I ran: have 2 panels side by side, identical in metrics. First panel has date range set to Last Month, rolling, with Last Month and 2 Months Ago time. Second Panel has date range set to Last Year, with Last Month time and Month dimension. In theory, Last Month is both panels should have the same numbers. In reality, they are different.
Well i tried out your approach, viewing data for both month as a date range and as a dimension but in both ways I am getting the same data till the last digit. There might be something else at play here. Have you been able to dig deeper into it?